• Our partners include:

  • RailEurope
  • Deutsche Bahn
  • Trenitalia
  • SNCF
  • Flixbus
  • RENFE
  • Ouibus
  • BlaBlaCar
  • Booking.com
  • Skyscanner

There are 3 ways to get from Milan to St. Moritz by bus, train or car

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Bus  •  3h 52m

  1. Take the bus from Milano Centrale Station to St. Moritz 51

$20 - $28

2 alternative options

Train  •  5h 30m

  1. Take the train from Milano Centrale to Tirano Re_8
  2. Take the train from Tirano to St. Moritz Regional / ...

$31 - $85

Drive  •  2h 45m

  1. Drive from Milan to St. Moritz 107.7 miles

$25 - $40

Questions & Answers

The cheapest way to get from Milan to St. Moritz is to bus which costs 17€ - 25€ and takes 3h 52m.

More details

The quickest way to get from Milan to St. Moritz is to drive which costs 22€ - 35€ and takes 2h 45m.

More details

Yes, there is a direct bus departing from Milano Centrale Station station and arriving at St. Moritz. Services depart three times a week, and operate Wednesday, Friday and Saturday. The journey takes approximately 3h 52m.

More details

No, there is no direct train from Milan to St. Moritz. However, there are services departing from Milano Centrale and arriving at St. Moritz via Tirano. The journey, including transfers, takes approximately 5h 30m.

More details

The distance between Milan and St. Moritz is 125 km. The road distance is 172.3 km.

Get driving directions

The best way to get from Milan to St. Moritz without a car is to bus which takes 3h 52m and costs 17€ - 25€.

More details

The bus from Milano Centrale Station to St. Moritz takes 3h 52m including transfers and departs three times a week.

More details

Milan to St. Moritz bus services, operated by Autostradale, arrive at Milano Centrale Station.

More details

Milan to St. Moritz train services, operated by Trenord, depart from Milano Centrale station.

More details

The best way to get from Milan to St. Moritz is to bus which takes 3h 52m and costs 17€ - 25€. Alternatively, you can train, which costs 26€ - 75€ and takes 5h 30m.

Mode details

Map of how to get from Milan to St. Moritz.
Launch map view
  • Distance: 78.3 miles
  • Duration: 3h 52m

What companies run services between Milan, Italy and St. Moritz, Switzerland?

Autostradale operates a bus from Milan to St. Moritz 3 times a week. Tickets cost $20 - $28 and the journey takes 3h 52m. Alternatively, you can take a train from Milan to St. Moritz via Tirano in around 5h 30m.

Train operators
Trenitalia

The primary train operator in Italy, Trenitalia was created in the year 2000. Trenitalia offers national rail connections in Italy as well as international connections to Austria, France, Germany and Switzerland. The company operates regional and long-distance trains, as well as high-speed trains called Frecce that travel on specialised tracks on speeds of up to 360km/h. Trenitalia tickets are available online, in stations across the country or from many travel agents that offer bookings.

Contact Details
Phone
+39 06 68475475
Website
trenitalia.com
Train from Tirano to St. Moritz
Ave. Duration
2h 31m
Frequency
Hourly
Estimated price
$20 - $40
Website
orario.trenitalia.com
Rhätische Bahn
Phone
+41 81 288 65 65
Website
rhb.ch
Train from Tirano to St. Moritz
Ave. Duration
2h 11m
Frequency
Every 4 hours
Estimated price
$23 - $28
Schedules at
rhb.ch
Book at
rhb.ch
Bus operators
Autostradale
Phone
+39 02 3008 9000
Email
info@autostradale.it
Website
autostradale.it
Bus from Milano Centrale Station to St. Moritz
Ave. Duration
3h 52m
Frequency
3 times a week
Estimated price
$20 - $28
Website
Autostradale

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.

More Questions & Answers

Milan to St. Moritz bus services, operated by Autostradale, arrive at St. Moritz station.

More details

Milan to St. Moritz train services, operated by Trenitalia, arrive at St. Moritz station.

More details

Yes, the driving distance between Milan to St. Moritz is 172 km. It takes approximately 2h 45m to drive from Milan to St. Moritz.

Get driving directions

There are 1176+ hotels available in St. Moritz. Prices start at $102 USD per night.

More details