There are 7 ways to get from Mexico City to St. Moritz by plane, train, or bus
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 Benito Juárez International Airport (MEX) to Zurich Airport (ZRH)plane MEX - ZRH
- Take the train from Zürich HB to Churtrain
- Take the train from Chur to St. Moritztrain
19h 44mCHF 544–1,054Fly to Verona Villafranca Airport, train, bus
cheapest- Fly from Benito Juárez International Airport (MEX) to Verona Villafranca Airport (VRN)plane MEX - VRN
- Take the train from Verona Porta Nuova to Milano Centraletrain
- Take the train from Milano Centrale to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
23h 55mCHF 396–1,401Fly to Basel, train
- Fly from Benito Juárez International Airport (MEX) to Basel (BSL)plane MEX - BSL
- Take the train from Basel SBB to Churtrain
- Take the train from Chur to St. Moritztrain
21h 1mCHF 642–1,232Fly to Milan Linate Airport, train, bus
- Fly from Benito Juárez International Airport (MEX) to Milan Linate Airport (LIN)plane MEX - LIN
- Take the train from Monza to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
21h 17mCHF 513–1,122Fly to Milano Malpensa Airport, train, bus
- Fly from Benito Juárez International Airport (MEX) to Milano Malpensa Airport (MXP)plane MEX - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Centraletrain
- Take the train from Milano Centrale to Colicotrain
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhofbus
20h 44mCHF 476–925Fly to Munich International Airport, train
- Fly from Benito Juárez International Airport (MEX) to Munich International Airport (MUC)plane MEX - MUC
- Take the train from Flughafen München to München Hbftrain
- Take the train from München Hbf to St. Margrethen SGtrain
- Take the train from St. Margrethen SG to Churtrain
- Take the train from Chur to St. Moritztrain
21h 49mCHF 564–1,380Fly to Frankfurt, train
- Fly from Benito Juárez International Airport (MEX) to Frankfurt (FRA)plane MEX - FRA
- Take the train from Frankfurt to Basel SBBtrain
- Take the train from Basel SBB to Churtrain
- Take the train from Chur to St. Moritztrain
22h 3mCHF 551–1,451
Benito Juárez International Airport (MEX) to Zurich Airport (ZRH) flights
Comparing Your Travel Options
The cheapest way to get from Mexico City to St. Moritz is to fly and train and bus which costs SFr 470 - SFr 950 and takes 20h 44m.
The fastest way to get from Mexico City to St. Moritz is to fly and train which takes 19h 44m and costs SFr 500 - SFr 1100.
The distance between Mexico City and St. Moritz is 9890 km.
It takes approximately 19h 44m to get from Mexico City to St. Moritz, including transfers.
St. Moritz is 8h ahead of Mexico City. It is currently 4:51 PM in Mexico City and 12:51 AM in St. Moritz.
There are 2299+ hotels available in St. Moritz.
What companies run services between Mexico City, Mexico and St. Moritz, Switzerland?
There is no direct connection from Mexico City to St. Moritz. However, you can take the line 4 bus to Terminal 1 - Aeropuerto, walk to Benito Juárez International Airport (MEX) airport, fly to Zurich Airport (ZRH), walk to Zürich Flughafen, take the train to Zürich HB, take the train to Chur, then take the train to St. Moritz. Alternatively, you can take the line 4 bus to Terminal 1 - Aeropuerto, walk to Benito Juárez International Airport (MEX) airport, fly to Basel (BSL), walk to Basel EuroAirport, Ankunft, take the bus to Basel, Bahnhof SBB, walk to Basel SBB, take the train to Chur, then take the train to St. Moritz.
- Website
- aeromexico.com
Flights from Benito Juárez International Airport to Zurich Airport via Amsterdam Schiphol
- Ave. Duration
- 14h 20m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 300–1,100
Flights from Benito Juárez International Airport to Zurich Airport via Paris Charles de Gaulle
- Ave. Duration
- 15h 2m
- When
- Every day
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Zurich Airport via Madrid
- Ave. Duration
- 16h 10m
- When
- Every day
- Estimated price
- CHF 310–1,100
Flights from Benito Juárez International Airport to Milano Malpensa Airport
- Ave. Duration
- 11h 50m
- When
- Sunday
- Estimated price
- CHF 260–900
Flights from Benito Juárez International Airport to Milano Malpensa Airport via Paris Charles de Gaulle
- Ave. Duration
- 13h 57m
- When
- Every day
- Estimated price
- CHF 260–900
Flights from Benito Juárez International Airport to Munich International Airport via Paris Charles de Gaulle
- Ave. Duration
- 14h 57m
- When
- Every day
- Estimated price
- CHF 320–1,200
Flights from Benito Juárez International Airport to Munich International Airport via Amsterdam Schiphol
- Ave. Duration
- 15h 10m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 320–1,200
Flights from Benito Juárez International Airport to Frankfurt via Paris Charles de Gaulle
- Ave. Duration
- 14h 16m
- When
- Every day
- Estimated price
- CHF 260–950
Flights from Benito Juárez International Airport to Frankfurt via Amsterdam Schiphol
- Ave. Duration
- 13h 50m
- When
- Monday to Saturday
- Estimated price
- CHF 260–950
- Website
- lufthansa.com
Flights from Benito Juárez International Airport to Zurich Airport via Frankfurt
- Ave. Duration
- 13h 30m
- When
- Saturday
- Estimated price
- CHF 330–1,200
Flights from Benito Juárez International Airport to Zurich Airport via Munich International Airport
- Ave. Duration
- 13h 45m
- When
- Saturday
- Estimated price
- CHF 340–1,200
Flights from Benito Juárez International Airport to Basel via Munich International Airport
- Ave. Duration
- 16h 35m
- When
- Saturday
- Estimated price
- CHF 370–1,300
Flights from Benito Juárez International Airport to Basel via Frankfurt
- Ave. Duration
- 18h 45m
- When
- Every day
- Estimated price
- CHF 360–1,300
Flights from Benito Juárez International Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 13h 5m
- When
- Every day
- Estimated price
- CHF 500–1,200
Flights from Benito Juárez International Airport to Milan Linate Airport via Munich International Airport
- Ave. Duration
- 15h
- When
- Monday, Wednesday, and Saturday
- Estimated price
- CHF 500–1,200
Flights from Benito Juárez International Airport to Milano Malpensa Airport via Munich International Airport
- Ave. Duration
- 13h 45m
- When
- Monday, Wednesday, and Saturday
- Estimated price
- CHF 300–1,100
Flights from Benito Juárez International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 14h 10m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Munich International Airport
- Ave. Duration
- 11h
- When
- Monday, Wednesday, and Saturday
- Estimated price
- CHF 350–1,300
Flights from Benito Juárez International Airport to Munich International Airport via Frankfurt
- Ave. Duration
- 13h 20m
- When
- Every day
- Estimated price
- CHF 350–1,300
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Munich International Airport
- Ave. Duration
- 17h 35m
- When
- Monday, Wednesday, and Saturday
- Estimated price
- CHF 410–1,500
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Frankfurt
- Ave. Duration
- 18h 30m
- When
- Every day
- Estimated price
- CHF 410–1,500
Flights from Benito Juárez International Airport to Frankfurt
- Ave. Duration
- 11h
- When
- Every day
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Frankfurt via Munich International Airport
- Ave. Duration
- 13h 15m
- When
- Monday, Wednesday, and Saturday
- Estimated price
- CHF 310–1,100
- Website
- airfrance.com
Flights from Benito Juárez International Airport to Zurich Airport via Paris Charles de Gaulle
- Ave. Duration
- 15h 2m
- When
- Every day
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Basel via Amsterdam Schiphol
- Ave. Duration
- 13h 20m
- When
- Every day
- Estimated price
- CHF 320–1,200
Flights from Benito Juárez International Airport to Milan Linate Airport via Paris Charles de Gaulle
- Ave. Duration
- 13h 42m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- CHF 300–1,100
Flights from Benito Juárez International Airport to Milano Malpensa Airport via Paris Charles de Gaulle
- Ave. Duration
- 13h 57m
- When
- Every day
- Estimated price
- CHF 260–900
Flights from Benito Juárez International Airport to Munich International Airport via Paris Charles de Gaulle
- Ave. Duration
- 14h 57m
- When
- Every day
- Estimated price
- CHF 320–1,200
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Paris Charles de Gaulle
- Ave. Duration
- 28h 35m
- When
- Thursday
- Estimated price
- CHF 360–1,300
Flights from Benito Juárez International Airport to Frankfurt via Paris Charles de Gaulle
- Ave. Duration
- 14h 16m
- When
- Every day
- Estimated price
- CHF 260–950
- Website
- iberia.com
Flights from Benito Juárez International Airport to Zurich Airport via Madrid
- Ave. Duration
- 15h 23m
- When
- Every day
- Estimated price
- CHF 360–1,200
Flights from Benito Juárez International Airport to Milan Linate Airport via Madrid
- Ave. Duration
- 15h 26m
- When
- Every day
- Estimated price
- CHF 370–1,200
Flights from Benito Juárez International Airport to Milano Malpensa Airport via Madrid
- Ave. Duration
- 14h 45m
- When
- Every day
- Estimated price
- CHF 310–1,100
Flights from Benito Juárez International Airport to Munich International Airport via Madrid
- Ave. Duration
- 15h 20m
- When
- Every day
- Estimated price
- CHF 480–800
Flights from Benito Juárez International Airport to Frankfurt via Madrid
- Ave. Duration
- 15h 12m
- When
- Every day
- Estimated price
- CHF 550–650
- Website
- klm.com
Flights from Benito Juárez International Airport to Zurich Airport via Amsterdam Schiphol
- Ave. Duration
- 14h 20m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 300–1,100
Flights from Benito Juárez International Airport to Basel via Amsterdam Schiphol
- Ave. Duration
- 13h 20m
- When
- Every day
- Estimated price
- CHF 320–1,200
Flights from Benito Juárez International Airport to Milan Linate Airport via Amsterdam Schiphol
- Ave. Duration
- 14h 40m
- When
- Friday
- Estimated price
- CHF 310–1,100
Flights from Benito Juárez International Airport to Munich International Airport via Amsterdam Schiphol
- Ave. Duration
- 15h 10m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 320–1,200
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Amsterdam Schiphol
- Ave. Duration
- 16h 55m
- When
- Sunday
- Estimated price
- CHF 370–1,300
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Paris Charles de Gaulle
- Ave. Duration
- 28h 35m
- When
- Thursday
- Estimated price
- CHF 360–1,300
Flights from Benito Juárez International Airport to Frankfurt via Amsterdam Schiphol
- Ave. Duration
- 13h 50m
- When
- Monday to Saturday
- Estimated price
- CHF 260–950
- Website
- britishairways.com
Flights from Benito Juárez International Airport to Zurich Airport via London Heathrow
- Ave. Duration
- 13h 50m
- When
- Monday
- Estimated price
- CHF 280–1,100
Flights from Benito Juárez International Airport to Basel via London Heathrow
- Ave. Duration
- 14h 20m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 310–1,200
Flights from Benito Juárez International Airport to Milan Linate Airport via London Heathrow
- Ave. Duration
- 13h 15m
- When
- Monday, Tuesday, Wednesday, Thursday, and Sunday
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Milano Malpensa Airport via London Heathrow
- Ave. Duration
- 13h 30m
- When
- Thursday
- Estimated price
- CHF 250–950
Flights from Benito Juárez International Airport to Munich International Airport via London Heathrow
- Ave. Duration
- 14h 5m
- When
- Monday to Friday
- Estimated price
- CHF 310–1,200
Flights from Benito Juárez International Airport to Frankfurt via London Heathrow
- Ave. Duration
- 14h 20m
- When
- Thursday and Friday
- Estimated price
- CHF 250–950
- Website
- easyjet.com
Flights from Benito Juárez International Airport to Basel via Barcelona
- Ave. Duration
- 14h 37m
- When
- Sunday, Tuesday, and Wednesday
- Estimated price
- CHF 340–1,300
Flights from Benito Juárez International Airport to Basel via Madrid
- Ave. Duration
- 15h 15m
- When
- Saturday
- Estimated price
- CHF 390–1,300
- Website
- aireuropa.com
Flights from Benito Juárez International Airport to Zurich Airport via Madrid
- Ave. Duration
- 16h 10m
- When
- Every day
- Estimated price
- CHF 310–1,100
- Website
- neosair.it
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Rome
- Ave. Duration
- 14h 15m
- When
- Friday
- Estimated price
- CHF 390–1,400
- Website
- ryanair.com
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Madrid
- Ave. Duration
- 17h 10m
- When
- Tuesday, Friday, and Saturday
- Estimated price
- CHF 440–1,500
- Website
- volotea.com
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Barcelona
- Ave. Duration
- 20h 45m
- When
- Tuesday and Saturday
- Estimated price
- CHF 460–1,500
Train from Zürich HB to Chur
- Ave. Duration
- 1h 15m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 35–50
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 26–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Basel SBB to Chur
- Ave. Duration
- 2h 15m
- Frequency
- Every 3 hours
- Estimated price
- CHF 60–90
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 26–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 26–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Basel SBB to Chur
- Ave. Duration
- 2h 15m
- Frequency
- Every 3 hours
- Estimated price
- CHF 60–90
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 26–40
- 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 St. Margrethen SG to Chur
- Ave. Duration
- 1h 2m
- Frequency
- Hourly
- Estimated price
- CHF 27–40
- Schedules at
- Schweizerische Südostbahn AG
- Phone
- +41 81 288 65 65
- [email protected]
- Website
- Rhätische Bahn
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- Rhätische Bahn
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- Rhätische Bahn
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- Rhätische Bahn
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- Rhätische Bahn
- Phone
- +49 (0) 7531 915109
- [email protected]
- Website
- SBB GmbH
Train from Basel SBB to Chur
- Ave. Duration
- 2h 15m
- Frequency
- 5 times a day
- Estimated price
- CHF 15–20
- Schedules at
- SBB GmbH
Train from Basel SBB to Chur
- Ave. Duration
- 2h 15m
- Frequency
- 5 times a day
- Estimated price
- CHF 15–20
- Schedules at
- SBB GmbH
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Monza to Colico
- Ave. Duration
- 1h 14m
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- 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 Colico
- Ave. Duration
- 1h 26m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- Website
- Trenord
Train from Milano Centrale to Colico
- Ave. Duration
- 1h 26m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- Website
- Trenord
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Regio (DB Regional)
Train from Flughafen München to München Hbf
- Ave. Duration
- 41 min
- Frequency
- Hourly
- Estimated price
- CHF 6–24
- Website
- Deutsche Bahn Regio (DB Regional)
- Phone
- +49 30 2970
- Website
- Deutsche Bahn Intercity (DB IC)
Train from München Hbf to St. Margrethen SG
- Ave. Duration
- 2h 21m
- Frequency
- Twice a week
- Estimated price
- CHF 35–75
- Website
- Deutsche Bahn Intercity (DB IC)
Train from Frankfurt to Basel SBB
- Ave. Duration
- 2h 57m
- Frequency
- Hourly
- Estimated price
- CHF 55–120
- Website
- Deutsche Bahn Intercity (DB IC)
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Verona Porta Nuova to Milano Centrale
- Ave. Duration
- 1h 14m
- Frequency
- Every 30 minutes
- Estimated price
- CHF 19–35
- Website
- Trenitalia Frecce
- Phone
- +39 06 68475475
- [email protected]
- Website
- Trenitalia Eurocity
Train from Verona Porta Nuova to Milano Centrale
- Ave. Duration
- 1h 23m
- Frequency
- 3 times a day
- Estimated price
- CHF 35–75
- Website
- Trenitalia Eurocity
- 1st Class
- CHF 50–75
- 2nd Class
- CHF 35–50
- Phone
- +31 30 751 5155
- Website
- Nederlandse Spoorwegen (NS)
Train from Frankfurt to Basel SBB
- Ave. Duration
- 4h 15m
- Frequency
- Twice daily
- Estimated price
- CHF 30–70
- Website
- Nederlandse Spoorwegen (NS)
- Phone
- +41 (0)848 818 818
- [email protected]
- Website
- PostAuto AG
Bus from Chiavenna, Stazione to St. Moritz, Bahnhof
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- CHF 5–8
- Website
- PostAuto AG
Bus from Chiavenna, Stazione to St. Moritz, Bahnhof
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- CHF 5–8
- Website
- PostAuto AG
Bus from Chiavenna, Stazione to St. Moritz, Bahnhof
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- CHF 5–8
- Website
- PostAuto AG
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
Want to know more about Flixbus?
Read the travel guide





















































