Zermatt to St. Moritz by train

Compare prices, times and book fast direct trains

Overview: trains from Zermatt to St. Moritz

Find the key information for travelling by train from Zermatt to St. Moritz, including journey times, fares and operators serving the route. Compare your options and plan the journey that works for you with Rail Europe.

First train 07:50 View journey
Last train 09:52 View journey
Avg changes 0
Fastest journey 7hr 45m View journey
Distance (km) 170
Trains / day 4 View all
Cheapest journey US$65.00 View journey
Avg journey time 7hr 53m
Train operators 5

Zermatt to St. Moritz train travel explained

Want to know how to get from Zermatt to St. Moritz by train? We have gathered for you all the useful information about this trip!

The fastest trains from Zermatt to St. Moritz take around 7 hours and 45 minutes, covering a distance of approximately 170 kilometres.

On weekdays, the first train leaving Zermatt is scheduled to depart at around  07:52. The last departure is usually at around 09:52. This is the same as during the weekend. On average, there are about 4 trains per day travelling between the two cities. They leave approximately every 42 minutes.

Prices for a single ticket between the two cities start from US$65.00.

We think any time is a great time to visit St. Moritz, as each season has its own unique charm. Nevertheless, please make sure you check the local weather and average seasonal temperatures at destination before deciding on your holiday.

For more tips to help you plan your journey, check out our help articles, or read our guide to St. Moritz.

Is there a direct train from Zermatt to St. Moritz?

Yes, there is a direct train from Zermatt to St. Moritz.

Trains usually run with a similar frequency on weekends.

How long does it take to travel from Zermatt to St. Moritz?

The Zermatt to St. Moritz train travel takes about 7 hours and 45 minutes, no matter when you leave.

What are the Zermatt to St. Moritz train times and schedule?

If you're travelling on a weekday, you'll find the earliest train to St. Moritz leaving Zermatt at around 07:52 and the last train leaving at around 09:52. This is the same at the weekend.

230+ European rail operators Official partner of 230+ European rail operators

Sncf Eurostar Deutsche Bahn Trenitalia National Rail ÖBB Renfe SBB
Interrail Eurail TGV Lyria Swiss Travel System Italo Iryo Alleo OUIGO RegioJet

Travellers rate us "Excellent!"

Child and youth passengers

The definition of "Child" and "Youth" varies by country and operator. This is why we ask for the age of young passengers.

Sometimes children below a certain age can travel without a seat for free. If you want to guarantee a seat for child passengers, enter '6' as the age of the child.

Read more about child and youth passenger ages. See also youth discounts and railcards.