There are 8 ways to get from Madrid to Olten by plane, train, train (Renfe, Ouigo, TGV), bus, car, or train (Renfe, TGV)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Fly to Zurich Airport, train
best- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Zurich Airport (ZRH)plane MAD - ZRH
- Take the train from Zürich Flughafen to Oltentrain
6h 1mCHF 98–272Fly to Basel
cheapest- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Basel (BSL)plane MAD - BSL
5h 40mCHF 69–237Train via Barcelona
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sudtrain Tgv
- Take the train from Valence Tgv Rhone-Alpes Sud to Mulhouse Villetrain Tgv
15h 7mCHF 224–558Bus, train
- Take the bus from Estación Sur de Autobuses to Lyon - Gerland Bus Stationbus
- Take the bus from Lyon to Bernbus
- Take the train from Bern to Oltentrain Ice / ...
23h 38mCHF 139–266Drive 1,527.4 km
- Drive from Madrid to Oltencar 1,527.4 km
15h 15mCHF 249–360Fly to Geneva International Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Geneva International Airport (GVA)plane MAD - GVA
- Take the train from Genève-Aéroport to Renens VDtrain
- Take the train from Renens VD to Oltentrain
7h 33mCHF 132–437Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Avignon Tgvtrain
- Take the train from Avignon Tgv to Genevetrain Tgv
- Take the train from Genève to Lausannetrain Ic1 / ...
- Take the train from Lausanne to Oltentrain Ic5 / ...
15h 19mCHF 267–543Bus, train via Avignon
- Take the bus from Estación Sur de Autobuses to Avignonbus
- Take the train from Avignon Centre to Annecytrain K21
- Take the train from Lancy-Bachet to Lausannetrain
- Take the train from Lausanne to Oltentrain Ic5 / ...
27h 15mCHF 249–596
Madrid to Olten by train
Questions & Answers
The cheapest way to get from Madrid to Olten is to fly which costs SFr 65 - SFr 240 and takes 5h 40m.
The fastest way to get from Madrid to Olten is to fly which takes 5h 40m and costs SFr 65 - SFr 240.
No, there is no direct train from Madrid to Olten. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Olten via Barcelona-Sants, Valence Tgv Rhone-Alpes Sud, Mulhouse Ville and Basel SBB. The journey, including transfers, takes approximately 15h 7m.
The distance between Madrid and Olten is 1315 km. The road distance is 1527.4 km.
The best way to get from Madrid to Olten without a car is to train via Barcelona which takes 15h 7m and costs SFr 220 - SFr 600.
It takes approximately 6h 1m to get from Madrid to Olten, including transfers.
Madrid to Olten train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Olten is to train via Barcelona which takes 15h 7m and costs SFr 220 - SFr 600. Alternatively, you can fly, which costs SFr 65 - SFr 240 and takes 5h 40m.
Madrid to Olten train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Olten is 1527 km. It takes approximately 15h 15m to drive from Madrid to Olten.
What companies run services between Madrid, Spain and Olten, Switzerland?
You can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Olten via Barcelona-Sants, Valence Tgv Rhone-Alpes Sud, Mulhouse Ville, Basel Sbb, and Basel SBB in around 15h 7m. Alternatively, easyJet flies from Adolfo Suárez Madrid–Barajas Airport (MAD) to Basel (BSL) once daily.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 65–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport via Barcelona
- Ave. Duration
- 5h
- When
- Monday and Friday
- Estimated price
- CHF 80–230
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 56m
- When
- Every day
- Estimated price
- CHF 60–150
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 65–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport via Barcelona
- Ave. Duration
- 5h
- When
- Monday and Friday
- Estimated price
- CHF 80–230
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 57m
- When
- Every day
- Estimated price
- CHF 60–150
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 60–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- CHF 50–180
- Website
- swiss.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 18m
- When
- Every day
- Estimated price
- CHF 80–190
- Website
- easyjet.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Basel
- Ave. Duration
- 2h 15m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 50–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Basel via Nice
- Ave. Duration
- 5h 15m
- When
- Friday
- Estimated price
- CHF 50–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 2h
- When
- Sunday
- Estimated price
- CHF 50–230
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Zürich Flughafen to Olten
- Ave. Duration
- 50 min
- Frequency
- Hourly
- Estimated price
- CHF 22–70
- Website
- https://www.sbb.ch/en
Train from Bern to Olten
- Ave. Duration
- 27 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 21–65
- Website
- https://www.sbb.ch/en
Train from Genève-Aéroport to Renens VD
- Ave. Duration
- 46 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 21–65
- Website
- https://www.sbb.ch/en
Train from Renens VD to Olten
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- CHF 55–170
- Website
- https://www.sbb.ch/en
Train from Genève to Lausanne
- Ave. Duration
- 51 min
- Frequency
- Every 15 minutes
- Estimated price
- CHF 20–65
- Website
- https://www.sbb.ch/en
Train from Lausanne to Olten
- Ave. Duration
- 1h 44m
- Frequency
- Hourly
- Estimated price
- CHF 55–170
- Website
- https://www.sbb.ch/en
Train from Lancy-Bachet to Lausanne
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- CHF 22–70
- Website
- https://www.sbb.ch/en
Train from Lausanne to Olten
- Ave. Duration
- 1h 44m
- Frequency
- Hourly
- Estimated price
- CHF 55–170
- Website
- https://www.sbb.ch/en
Rome2Rio's guide to Renfe AVE
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 22m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 85–160
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 926 851
- [email protected]
- Website
- iryo.eu
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 31m
- Frequency
- Hourly
- Estimated price
- CHF 60–120
- Website
- https://iryo.eu/en/home
- Phone
- +34 900 759 781
- Website
- ouigo.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Every 2 hours
- Estimated price
- CHF 50–95
- Website
- https://www.ouigo.com/es/en
Rome2Rio's guide to Renfe Viajeros
Contact DetailsContact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- 4 times a day
- Estimated price
- CHF 70–120
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 29m
- Frequency
- Twice daily
- Estimated price
- CHF 65–100
- Website
- https://www.renfe.com/es/en
Train from Madrid-Puerta de Atocha-Almudena Grandes to Avignon Tgv
- Ave. Duration
- 8h 2m
- Frequency
- Twice daily
- Estimated price
- CHF 120–190
- Website
- https://www.renfe.com/es/en
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 26m
- Frequency
- 5 times a day
- Estimated price
- CHF 100–170
- Website
- https://www.sncf-connect.com/en-en
Train from Valence Tgv Rhone-Alpes Sud to Mulhouse Ville
- Ave. Duration
- 3h 53m
- Frequency
- Every 3 hours
- Estimated price
- CHF 95–160
- Website
- https://www.sncf-connect.com/en-en
Train from Avignon Tgv to Geneve
- Ave. Duration
- 3h 3m
- Frequency
- Once daily
- Estimated price
- CHF 75–120
- Website
- https://www.sncf-connect.com/en-en
Train from Genève to Lausanne
- Ave. Duration
- 55 min
- Frequency
- 6 times a week
- Estimated price
- CHF 11–19
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +41 58 580 70 70
- Website
- sob.ch
Train from Bern to Olten
- Ave. Duration
- 48 min
- Frequency
- Once daily
- Estimated price
- CHF 22–35
- Schedules at
- sob.ch
- Phone
- +41 58 327 32 71
- Website
- bls.ch
Train from Bern to Olten
- Ave. Duration
- 48 min
- Frequency
- Once daily
- Estimated price
- CHF 11–16
- Website
- https://www.bls.ch/en
- Phone
- +33 4 13 94 30 50
- Website
- zou.maregionsud.fr
Train from Avignon Centre to Annecy
- Ave. Duration
- 4h 16m
- Frequency
- Once a week
- Estimated price
- CHF 80–170
- Website
- https://zou.maregionsud.fr/en/
- Phone
- +3 318 576 2228
- Website
- blablacar.co.uk
Bus from Estación Sur de Autobuses to Lyon - Gerland Bus Station
- Ave. Duration
- 17h 10m
- Frequency
- 4 times a day
- Estimated price
- CHF 100–190
- Website
- https://www.blablacar.co.uk/bus
Bus from Lyon to Bern
- Ave. Duration
- 5h
- Frequency
- Once daily
- Estimated price
- CHF 25–45
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Lyon to Bern
- Ave. Duration
- 4h 35m
- Frequency
- Every 4 hours
- Estimated price
- CHF 23–40
- Website
- https://www.flixbus.co.uk
- Phone
- +34 910 207 007
- Website
- alsa.es
Bus from Estación Sur de Autobuses to Avignon
- Ave. Duration
- 16h 45m
- Frequency
- Once daily
- Estimated price
- CHF 85–180
- Schedules at
- alsa.es
Want to know more about travelling around Switzerland
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Train travel in Spain: A guide to Renfe
Read the travel guide
More Questions & Answers
Book your Madrid to Olten train tickets online with Omio.
There are 400+ hotels available in Olten.











































