There are 10 ways to get from Madrid to Bernina Express by plane, train, train (Renfe, Ouigo, Trenitalia), bus, or car
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 HB to Churtrain
- Take the train from Chur to Ospizio Berninatrain
9h 50mFly to Bologna Guglielmo Marconi Airport, train
cheapest- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Bologna Guglielmo Marconi Airport (BLQ)plane MAD - BLQ
- Take the train from Bologna centrale to Milano Centraletrain
- Take the train from Milano Centrale to Tiranotrain
12h 2mCHF 92–235Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Milano Centraletrain Fr
- Take the train from Milano Centrale to Tiranotrain Re8
20h 45mCHF 192–364Bus
- Take the bus from Madrid to Milanbus FlixBus N1138
- Take the bus from Milano Centrale Station to Livigno, Centro Bus Stationbus Livigno Airlink
30h 56mCHF 136–215Drive 1,651.4 km
- Drive from Madrid to Bernina Expresscar 1,651.4 km
18h 49mCHF 271–391Fly to Milan Linate Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milan Linate Airport (LIN)plane MAD - LIN
- Take the train from Monza to Tiranotrain
- Take the train from Tirano to Ospizio Berninatrain
10h 55mFly to Milano Malpensa Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milano Malpensa Airport (MXP)plane MAD - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Centraletrain
- Take the train from Milano Centrale to Tiranotrain
- Take the train from Tirano to Ospizio Berninatrain
11h 29mFly to Il Caravaggio International Airport, bus, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Il Caravaggio International Airport (BGY)plane MAD - BGY
- Take the bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoiabus
- Take the train from Milano Centrale to Tiranotrain
- Take the train from Tirano to Ospizio Berninatrain
11h 28mFly to Turin Caselle Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Turin Caselle Airport (TRN)plane MAD - TRN
- Take the train from Torino Porta di Susa to Milano Centraletrain
- Take the train from Milano Centrale to Tiranotrain
- Take the train from Tirano to Ospizio Berninatrain
12h 23mFly 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 Zürich HBtrain
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to Ospizio Berninatrain
13h 14m
Madrid to Bernina Express by train and foot
Questions & Answers
The cheapest way to get from Madrid to Bernina Express is to fly and train which costs SFr 90 - SFr 240 and takes 12h 2m.
The fastest way to get from Madrid to Bernina Express is to fly and train which takes 12h 2m and costs SFr 90 - SFr 240.
No, there is no direct bus from Madrid to Bernina Express. However, there are services departing from Madrid and arriving at Ospizio Bernina, Albergo via lotto m1 m5, Milano Centrale Station and Livigno, Centro Bus Station. The journey, including transfers, takes approximately 30h 56m.
No, there is no direct train from Madrid to Bernina Express. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Ospizio Bernina via Barcelona-Sants, Lyon Part Dieu, Milano Centrale and Tirano. The journey, including transfers, takes approximately 20h 45m.
The distance between Madrid and Bernina Express is 1473 km. The road distance is 1651.4 km.
The best way to get from Madrid to Bernina Express without a car is to train which takes 20h 45m and costs SFr 190 - SFr 370.
It takes approximately 9h 50m to get from Madrid to Bernina Express, including transfers.
Madrid to Bernina Express bus services, operated by FlixBus, depart from Madrid station.
Madrid to Bernina Express train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Bernina Express is to train which takes 20h 45m and costs SFr 190 - SFr 370. Alternatively, you can bus, which costs SFr 130 - SFr 220 and takes 30h 56m.
What companies run services between Madrid, Spain and Bernina Express, Switzerland?
You can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Bernina Express via Barcelona-Sants, Lyon Part Dieu, Milano Centrale, Tirano, and Ospizio Bernina in around 20h 45m. Alternatively, you can take a bus from Madrid to Bernina Express via Milan, Lampugnano, Lotto Fieramilanocity, lotto m1 m5, stazione centrale via tonale, Milano Centrale Station, Livigno, Centro Bus Station, and Ospizio Bernina, Albergo in around 30h 56m.
- 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–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- CHF 60–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 11m
- When
- Every day
- Estimated price
- CHF 60–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- CHF 50–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport via Barcelona
- Ave. Duration
- 4h 27m
- When
- Wednesday
- Estimated price
- CHF 55–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 60–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 56m
- When
- Every day
- Estimated price
- CHF 55–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–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- CHF 60–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 11m
- When
- Every day
- Estimated price
- CHF 60–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- CHF 50–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport via Barcelona
- Ave. Duration
- 4h 30m
- When
- Wednesday, Monday, and Thursday
- Estimated price
- CHF 55–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- CHF 60–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 57m
- When
- Every day
- Estimated price
- CHF 55–150
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 9m
- When
- Every day
- Estimated price
- CHF 22–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 40–220
Flights from Adolfo Suárez Madrid–Barajas Airport to Il Caravaggio International Airport via Ibiza
- Ave. Duration
- 4h 26m
- When
- Saturday, Monday, Tuesday, Wednesday, and Sunday
- Estimated price
- CHF 40–220
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport
- Ave. Duration
- 2h 5m
- When
- Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 40–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 20m
- When
- Monday, Tuesday, Wednesday, and Friday
- Estimated price
- CHF 50–170
- 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–190
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- CHF 45–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- CHF 50–200
- Website
- swiss.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Zurich Airport
- Ave. Duration
- 2h 17m
- When
- Every day
- Estimated price
- CHF 75–190
- Website
- flyulendo.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- CHF 21–130
- Website
- easyjet.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport
- Ave. Duration
- 2h
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 40–240
Flights from Adolfo Suárez Madrid–Barajas Airport to Geneva International Airport via Nice
- Ave. Duration
- 4h 45m
- When
- Monday and Friday
- Estimated price
- CHF 40–240
Train from Zürich HB to Chur
- Ave. Duration
- 1h 15m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 35–110
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Genève-Aéroport to Zürich HB
- Ave. Duration
- 3h 3m
- Frequency
- Hourly
- Estimated price
- CHF 90–270
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Zürich HB to Chur
- Ave. Duration
- 1h 15m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 35–110
- Website
- Swiss Federal Railways (SBB CFF FFS)
- Phone
- +41 58 580 70 70
- Website
- Schweizerische Südostbahn AG
Train from Zürich HB to Chur
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- CHF 35–55
- Schedules at
- Schweizerische Südostbahn AG
Train from Zürich HB to Chur
- Ave. Duration
- 1h 36m
- Frequency
- Hourly
- Estimated price
- CHF 35–55
- Schedules at
- Schweizerische Südostbahn AG
- Phone
- +41 81 288 65 65
- [email protected]
- Website
- Rhätische Bahn
Train from Chur to Ospizio Bernina
- Ave. Duration
- 2h 38m
- Frequency
- Once daily
- Website
- Rhätische Bahn
Train from Tirano to Ospizio Bernina
- Ave. Duration
- 1h 34m
- Frequency
- Every 2 hours
- Website
- Rhätische Bahn
Train from Tirano to Ospizio Bernina
- Ave. Duration
- 1h 34m
- Frequency
- Every 2 hours
- Website
- Rhätische Bahn
Train from Tirano to Ospizio Bernina
- Ave. Duration
- 1h 34m
- Frequency
- Every 2 hours
- Website
- Rhätische Bahn
Train from Tirano to Ospizio Bernina
- Ave. Duration
- 1h 34m
- Frequency
- Every 2 hours
- Website
- Rhätische Bahn
Train from Chur to Ospizio Bernina
- Ave. Duration
- 2h 38m
- Frequency
- Once daily
- Website
- Rhätische Bahn
- Phone
- +34 91 232 03 20
- Website
- Renfe AVE
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Every 20 minutes
- Estimated price
- CHF 85–150
- Website
- Renfe AVE
- Phone
- +34 900 926 851
- [email protected]
- Website
- Iryo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 22m
- Frequency
- Hourly
- Estimated price
- CHF 60–120
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Hourly
- Estimated price
- CHF 55–95
- Website
- Ouigo
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- 4 times a day
- Estimated price
- CHF 70–110
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Twice daily
- Estimated price
- CHF 75–120
- Website
- Renfe Viajeros
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- 4 times a day
- Estimated price
- CHF 50–85
- Website
- Trenitalia
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Milano Centrale to Tirano
- Ave. Duration
- 2h 33m
- Frequency
- Hourly
- Estimated price
- CHF 10–13
- Website
- Trenord
Train from Monza to Tirano
- Ave. Duration
- 2h 21m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- Trenord
Train from Malpensa Aeroporto T1 to Milano Centrale
- Ave. Duration
- 56 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–6
- Website
- Trenord
Train from Milano Centrale to Tirano
- Ave. Duration
- 2h 33m
- Frequency
- Hourly
- Estimated price
- CHF 10–13
- Website
- Trenord
Train from Milano Centrale to Tirano
- Ave. Duration
- 2h 33m
- Frequency
- Hourly
- Estimated price
- CHF 10–13
- Website
- Trenord
Train from Milano Centrale to Tirano
- Ave. Duration
- 2h 33m
- Frequency
- Hourly
- Estimated price
- CHF 10–13
- Website
- Trenord
Train from Milano Centrale to Tirano
- Ave. Duration
- 2h 33m
- Frequency
- Hourly
- Estimated price
- CHF 10–13
- Website
- Trenord
- Phone
- +39 06 8937 1892
- Website
- Italo Treno
Train from Torino Porta di Susa to Milano Centrale
- Ave. Duration
- 47 min
- Frequency
- Hourly
- Estimated price
- CHF 17–35
- Website
- Italo Treno
Train from Bologna centrale to Milano Centrale
- Ave. Duration
- 1h 4m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 26–50
- Website
- Italo Treno
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Madrid to Milan
- Ave. Duration
- 23h 5m
- Frequency
- Once daily
- Estimated price
- CHF 110–190
- Website
- Flixbus
- Phone
- +39 06 44101
- [email protected]
- Website
- fsbusitalia.it
Bus from Milano Centrale Station to Livigno, Centro Bus Station
- Ave. Duration
- 4h 30m
- Frequency
- Once daily
- Estimated price
- CHF 18–23
- Schedules at
- Busitalia Umbria
- [email protected]
- Website
- TERRAVISION
Bus from Milan Bergamo Orio al Serio Airport to Piazza Luigi di Savoia
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 4–23
- Website
- TERRAVISION
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
Italy Travel Guides
Read the travel guide
More Questions & Answers
Madrid to Bernina Express bus services, operated by FlixBus, arrive at Milan station.
Madrid to Bernina Express train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Bernina Express is 1651 km. It takes approximately 18h 49m to drive from Madrid to Bernina Express.
Book your Madrid to Bernina Express train tickets online with Omio.
There are 1036+ hotels available in Bernina Express.



















































