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 34mCHF 546–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 395–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
20h 36mCHF 644–1,237Fly 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 7mCHF 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–924Fly 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 565–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
21h 48mCHF 553–1,446
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 34m and costs SFr 500 - SFr 1100.
The distance between Mexico City and St. Moritz is 9890 km.
It takes approximately 19h 34m to get from Mexico City to St. Moritz, including transfers.
St. Moritz is 8h ahead of Mexico City. It is currently 8:04 AM in Mexico City and 4:04 PM in St. Moritz.
There are 2296+ 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
- lufthansa.com
Flights from Benito Juárez International Airport to Zurich Airport via Frankfurt
- Ave. Duration
- 13h 20m
- When
- Every day
- Estimated price
- CHF 330–1,200
Flights from Benito Juárez International Airport to Zurich Airport via Munich International Airport
- Ave. Duration
- 13h 35m
- When
- Monday, Tuesday, Wednesday, and Saturday
- Estimated price
- CHF 340–1,200
Flights from Benito Juárez International Airport to Basel via Munich International Airport
- Ave. Duration
- 13h 20m
- When
- Monday, Wednesday, and Friday
- Estimated price
- CHF 370–1,300
Flights from Benito Juárez International Airport to Basel via Frankfurt
- Ave. Duration
- 18h 35m
- When
- Every day
- Estimated price
- CHF 360–1,300
Flights from Benito Juárez International Airport to Milan Linate Airport via Frankfurt
- Ave. Duration
- 12h 55m
- 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
- 16h 5m
- When
- Monday, Tuesday, Wednesday, Friday, 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, Tuesday, Wednesday, Friday, and Saturday
- Estimated price
- CHF 300–1,100
Flights from Benito Juárez International Airport to Milano Malpensa Airport via Frankfurt
- Ave. Duration
- 14h
- When
- Thursday and Friday
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Munich International Airport
- Ave. Duration
- 11h
- When
- Monday, Tuesday, Wednesday, Friday, and Saturday
- Estimated price
- CHF 350–1,300
Flights from Benito Juárez International Airport to Munich International Airport via Frankfurt
- Ave. Duration
- 13h 10m
- 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, Tuesday, Wednesday, Friday, and Saturday
- Estimated price
- CHF 410–1,500
Flights from Benito Juárez International Airport to Verona Villafranca Airport via Frankfurt
- Ave. Duration
- 18h 20m
- When
- Friday and Saturday
- Estimated price
- CHF 410–1,500
Flights from Benito Juárez International Airport to Frankfurt
- Ave. Duration
- 10h 45m
- 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, Tuesday, Wednesday, Friday, and Saturday
- Estimated price
- CHF 310–1,100
- Website
- aeromexico.com
Flights from Benito Juárez International Airport to Zurich Airport via Amsterdam Schiphol
- Ave. Duration
- 13h 35m
- 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 57m
- When
- Every day
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Zurich Airport via Madrid
- Ave. Duration
- 16h 7m
- 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
- 15h 10m
- When
- Every day
- Estimated price
- CHF 260–900
Flights from Benito Juárez International Airport to Munich International Airport via Amsterdam Schiphol
- Ave. Duration
- 14h 25m
- When
- Monday, Tuesday, Wednesday, Thursday, Saturday, and Sunday
- Estimated price
- CHF 320–1,200
Flights from Benito Juárez International Airport to Munich International Airport via Paris Charles de Gaulle
- Ave. Duration
- 15h 17m
- When
- Every day
- Estimated price
- CHF 320–1,200
Flights from Benito Juárez International Airport to Frankfurt via Amsterdam Schiphol
- Ave. Duration
- 13h 5m
- When
- Every day
- Estimated price
- CHF 260–950
Flights from Benito Juárez International Airport to Frankfurt via Paris Charles de Gaulle
- Ave. Duration
- 14h 30m
- 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 41m
- 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 45m
- 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 47m
- 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 30m
- When
- Every day
- Estimated price
- CHF 480–800
Flights from Benito Juárez International Airport to Frankfurt via Madrid
- Ave. Duration
- 15h 22m
- When
- Every day
- Estimated price
- CHF 550–650
- Website
- airfrance.com
Flights from Benito Juárez International Airport to Zurich Airport via Paris Charles de Gaulle
- Ave. Duration
- 15h 57m
- When
- Every day
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Basel via Amsterdam Schiphol
- Ave. Duration
- 12h 35m
- 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
- 14h 2m
- When
- Every day
- Estimated price
- CHF 300–1,100
Flights from Benito Juárez International Airport to Milano Malpensa Airport via Paris Charles de Gaulle
- Ave. Duration
- 15h 10m
- 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
- 15h 17m
- 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 30m
- When
- Every day
- Estimated price
- CHF 260–950
- Website
- britishairways.com
Flights from Benito Juárez International Airport to Zurich Airport via London Heathrow
- Ave. Duration
- 13h 15m
- When
- Friday
- Estimated price
- CHF 280–1,100
Flights from Benito Juárez International Airport to Basel via London Heathrow
- Ave. Duration
- 14h 5m
- When
- Monday, Wednesday, Saturday, Sunday, Tuesday, and Thursday
- Estimated price
- CHF 310–1,200
Flights from Benito Juárez International Airport to Milan Linate Airport via London Heathrow
- Ave. Duration
- 14h 35m
- When
- Friday
- Estimated price
- CHF 290–1,100
Flights from Benito Juárez International Airport to Milano Malpensa Airport via London Heathrow
- Ave. Duration
- 14h 30m
- When
- Friday
- Estimated price
- CHF 250–950
Flights from Benito Juárez International Airport to Munich International Airport via London Heathrow
- Ave. Duration
- 14h 10m
- When
- Friday
- Estimated price
- CHF 310–1,200
Flights from Benito Juárez International Airport to Frankfurt via London Heathrow
- Ave. Duration
- 14h 10m
- When
- Monday, Wednesday, Friday, and Saturday
- Estimated price
- CHF 250–950
- Website
- klm.com
Flights from Benito Juárez International Airport to Zurich Airport via Amsterdam Schiphol
- Ave. Duration
- 13h 35m
- 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
- 12h 35m
- 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
- 13h 55m
- When
- Friday
- Estimated price
- CHF 310–1,100
Flights from Benito Juárez International Airport to Munich International Airport via Amsterdam Schiphol
- Ave. Duration
- 14h 25m
- 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
- 27h 50m
- When
- Friday
- 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 5m
- When
- Every day
- Estimated price
- CHF 260–950
- Website
- aireuropa.com
Flights from Benito Juárez International Airport to Zurich Airport via Madrid
- Ave. Duration
- 16h 7m
- When
- Every day
- Estimated price
- CHF 310–1,100
- Website
- easyjet.com
Flights from Benito Juárez International Airport to Basel via Madrid
- Ave. Duration
- 14h
- When
- Tuesday
- Estimated price
- CHF 340–1,200
Flights from Benito Juárez International Airport to Basel via Barcelona
- Ave. Duration
- 14h 35m
- When
- Friday
- Estimated price
- CHF 340–1,200
- 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 45m
- When
- Wednesday, 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
- 19h 50m
- 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–55
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 28–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 65–95
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 28–40
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 28–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 65–95
- Website
- Swiss Federal Railways (SBB CFF FFS)
Train from Chur to St. Moritz
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- CHF 28–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–5
- 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 5–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 50–110
- 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 18–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–65
- 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





















































