The distance between Geneva and St. Moritz is around 434km (270 miles) and the quickest way to get there is to fly and then take the train which takes around 4h 20m.
We've found 6 different ways to get from Geneva to St. Moritz by train, bus, car and plane. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.
👋 Also check out St. Moritz → Geneva if you're planning a return trip.
Fly from Geneva (GVA) to Zurich (ZRH) then take the train to Landquart and then to St. Moritz.
Multiple operators
1 similiar route
We’ve grouped similar routes together, click the arrows to see the other options.
Take the train to Zürich HB then Landquart and then to St. Moritz.
Multiple train operators
1 similiar route
We’ve grouped similar routes together, click the arrows to see the other options.
Take the bus to Milan and then to St. Moritz.
Multiple bus operators
There are several options for getting from Geneva to St. Moritz by train, bus, car and plane. The cheapest option is to take the bus which costs around CHF 47 ($48) and will take around 8h 50m. If you need to get there more quickly, you can fly and then take the train and arrive in approximately 4h 20m, though it is a bit more costly at approximately CHF 305 ($310).
The distance between Geneva and St. Moritz is around 434km (270 miles). In a direct line (as the crow flies), the distance is 285km (177 miles)
It takes around 5h 55m to get from Geneva and St. Moritz by train. If you are travelling by car it will take around 5h 5m to drive there.
The quickest way to get from Geneva to St. Moritz is to fly and then take the train which takes around 4h 20m and will set you back approx CHF 305 ($310).
The cheapest way to travel between Geneva and St. Moritz, if you exclude driving, is to take the bus which will typically cost around CHF 47 ($48) for a standard one-way ticket.
Yes there is a train service that runs between Geneva and St. Moritz. It typically takes around 5h 55m and departs every 4 hours.
There are no direct train services that runs from Geneva to St. Moritz. However, you can instead can take several connecting trains with a changeover in Zürich HB and Landquart. These services run every 4 hours and will take a minimum of 5h 55m.
Swiss Railways, Deutsche Bahn, Rhätische Bahn and Matterhorn Gotthard Bahn run train services between Geneva and St. Moritz. Trains depart every 4 hours and will take around 5h 55m, however, this may vary depending on the particular service and whether it runs express or stops all stations.
Yes there is a bus that runs regularly from Geneva and St. Moritz. It typically takes around 8h 50m and departs once daily.
There are no direct bus services that runs from Geneva to St. Moritz. However, you can instead can take several connecting buses with changeovers in Milan. These services run once daily and will take a minimum of 8h 50m.
FlixBus, Blablabus and Autostradale run regular bus services between Geneva and St. Moritz. Buses run once daily and take around 8h 50m on average but will vary depending on you book with.
It doesn't look like you can fly directly from Geneva to St. Moritz. We recommend that you fly from Geneva (GVA) to Zurich (ZRH) then take the train to Landquart and then to St. Moritz. instead which will take 4h 20m.
The closest major airport to St. Moritz is Altenrhein Airport (ACH) (ACH) which is approximately 112km (69 miles) from St. Moritz. Zurich Airport (ZRH) (ZRH) and Geneva International Airport (GVA) (GVA) are also nearby and might be a better alternative airport depending on where you are flying from.
Yes it is possible to drive from Geneva and St. Moritz. The distance is around 481km (299 miles) by road and it will take around 5h 5m in normal traffic conditons.
If you don't have a car, the easiest way to get from Geneva to St. Moritz is to take the train which takes, on average, 5h 55m and will usually cost around CHF 260 ($265).
Transport option | Duration | Cost | Frequency | Distance |
---|---|---|---|---|
Plane and Train + 1 similar | 4h 20m | CHF 305($310) | every 4 hours | 440km (274 miles) |
Fly to Milan Linate (LIN), train | 6h 30m | CHF 255($255) | every 2 hours | 476km (296 miles) |
Train + 1 similar | 5h 55m | CHF 260($265) | every 4 hours | 465km (289 miles) |
Train via Brig | 8h 35m | CHF 270($275) | twice daily | 434km (270 miles) |
Bus | 8h 50m | CHF 47($48) | once daily | 496km (308 miles) |
Drive | 5h 5m | CHF 62($63) | on demand | 481km (299 miles) |
Rhätische Bahn
Matterhorn Gotthard Bahn
Autostradale
The following major airports near St. Moritz offer regular flights to various popular destinations within Switzerland and internationally.