St. Moritz to Milan by train

Compare prices, times and book fast direct trains

Overview: trains from St. Moritz to Milan

Find the key information for travelling by train from St. Moritz to Milan, 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 06:29 View journey
Last train 16:48 View journey
Avg changes 1
Fastest journey 5hr 22m View journey
Distance (km) 125
Trains / day 15 View all
Cheapest journey €43.90 View journey
Avg journey time 5hr 35m
Train operators 20

St. Moritz to Milan train travel explained

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

The fastest trains from St. Moritz to Milan take around 5 hours and 22 minutes, covering a distance of approximately 125 kilometres.

On weekdays, the first train leaving St. Moritz is scheduled to depart at around  06:29. The last departure is usually at around 16:48. This is the same as during the weekend. There are frequent services on this particular rail route. On average, there are about 15 trains per day travelling between the two cities. They leave approximately every 41 minutes.

Prices for a single ticket between the two cities start from €43.96.

We think any time is a great time to visit Milan, 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 Milan.

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

The journey between St. Moritz and Milan usually involves one change of train.

We usually find at least one departure on the route from St. Moritz to Milan every weekday that leave enough time to change trains without waiting around for longer than necessary.

Trains are typically more frequent on weekends, when we found at least one departure.

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

The St. Moritz to Milan train travel takes about 5 hours and 22 minutes, no matter when you leave.

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

If you're travelling on a weekday, you'll find the earliest train to Milan leaving St. Moritz at around 06:29 and the last train leaving at around 16:48. 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.