How to travel from Geneva to St. Moritz, Switzerland

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.

6 routes found

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. MoritzGeneva if you're planning a return trip.

🚀 Fastest
1
plane
+
train
+
train
+

Plane and Train

Fly from Geneva (GVA) to Zurich (ZRH) then take the train to Landquart and then to St. Moritz.

  • Duration4h 20m
  • Flight time45min
  • Typical cost
    CHF 305($310)
Operated by

Multiple operators

1 similiar route

We’ve grouped similar routes together, click the arrows to see the other options.

2
3 x train
+

Train

Take the train to Zürich HB then Landquart and then to St. Moritz.

  • Duration5h 55m
  • Departsevery 4 hours
  • Typical cost
    CHF 260($265)
Operated by

Multiple train operators

1 similiar route

We’ve grouped similar routes together, click the arrows to see the other options.

💰 Cheapest
3
bus
+
bus
+

Bus

Take the bus to Milan and then to St. Moritz.

  • Duration8h 50m
  • Departsonce daily
  • Typical cost
    CHF 47($48)
Operated by

Multiple bus operators

4
car
+

Drive

Drive to St. Moritz.

  • Duration5h 5m
  • Distance481km (299 miles)
Get turn-by-turn directions

Frequently asked questionsabout travel between Geneva and St. Moritz

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.

Train travel

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.

Bus travel

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.

Flights and Airlines

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.

Drive yourself

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).

How do I get from Geneva to St. Moritz

Compare travel optionsbetween Geneva and St. Moritz

Transport options from Geneva to St. Moritz
Transport optionDurationCostFrequencyDistance
Plane and Train + 1 similar
4h 20m
CHF 305($310)
every 4 hours440km (274 miles)
Fly to Milan Linate (LIN), train6h 30m
CHF 255($255)
every 2 hours476km (296 miles)
Train + 1 similar
5h 55m
CHF 260($265)
every 4 hours465km (289 miles)
Train via Brig8h 35m
CHF 270($275)
twice daily434km (270 miles)
Bus
8h 50m
CHF 47($48)
once daily496km (308 miles)
Drive
5h 5m
CHF 62($63)
on demand481km (299 miles)

Top Carriersoperating between Geneva and St. Moritz

Train operators

Airports near St. Moritz

The following major airports near St. Moritz offer regular flights to various popular destinations within Switzerland and internationally.

ACH
Altenrhein Airport (ACH)
Domestic Airport
Distance
112km (69 miles) from St. Moritz
ZRH
Zurich Airport (ZRH)
International Airport
Distance
144km (89 miles) from St. Moritz
GVA
Geneva International Airport (GVA)
International Airport
Distance
288km (179 miles) from St. Moritz