There are 4 ways to get from Porta Garibaldi to St. Moritz by train, bus, 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.
Train, bus via Colico
best- Take the train from Milano Centrale to ColicoRe 8
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhof604 / ...
4h 55mCHF 12–18Drive 164.6 km
- Drive from Porta Garibaldi to St. Moritz164.6 km
2h 33mCHF 27–39Train, bus
- Take the train from Milano Porta Garibaldi to ChiavennaR13
- Take the bus from Chiavenna, Stazione to St. Moritz, Bahnhof604 / ...
4h 57mCHF 13–18Train
- Take the train from Monza to TiranoRe 8
- Take the train from Tirano to St. MoritzRe9 / ...
6h 55m
Porta Garibaldi to St. Moritz by train and bus
Questions & Answers
The cheapest way to get from Porta Garibaldi to St. Moritz is to train and bus which costs SFr 12 - SFr 18 and takes 4h 57m.
The fastest way to get from Porta Garibaldi to St. Moritz is to drive which takes 2h 33m and costs SFr 26 - SFr 40.
No, there is no direct train from Porta Garibaldi to St. Moritz. However, there are services departing from Milano Porta Garibaldi and arriving at St. Moritz via Monza and Tirano. The journey, including transfers, takes approximately 6h 55m.
The distance between Porta Garibaldi and St. Moritz is 166 km. The road distance is 164.6 km.
The best way to get from Porta Garibaldi to St. Moritz without a car is to train and bus via Colico which takes 4h 55m and costs SFr 12 - SFr 18.
It takes approximately 4h 55m to get from Porta Garibaldi to St. Moritz, including transfers.
Porta Garibaldi to St. Moritz train services, operated by Trenord S.r.l., depart from Monza station.
Porta Garibaldi to St. Moritz train services, operated by Trenord S.r.l., arrive at Tirano station.
Yes, the driving distance between Porta Garibaldi to St. Moritz is 165 km. It takes approximately 2h 33m to drive from Porta Garibaldi to St. Moritz.
There are 2035+ hotels available in St. Moritz.
What companies run services between Porta Garibaldi, Lombardy, Italy and St. Moritz, Switzerland?
You can take a train from Milano Porta Garibaldi to St. Moritz via Monza and Tirano in around 6h 55m.
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Milano Centrale to Colico
- Ave. Duration
- 1h 26m
- Frequency
- Hourly
- Estimated price
- CHF 6–8
- Website
- https://www.trenord.it/en/
Train from Milano Porta Garibaldi to Chiavenna
- Ave. Duration
- 2h 44m
- Frequency
- Once a week
- Estimated price
- CHF 7–10
- Website
- https://www.trenord.it/en/
Train from Monza to Tirano
- Ave. Duration
- 2h 32m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- https://www.trenord.it/en/
- Phone
- +41 81 288 65 65
- Website
- rhb.ch
Train from Tirano to St. Moritz
- Ave. Duration
- 2h 11m
- Frequency
- Every 2 hours
- Website
- https://www.rhb.ch/en/home
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- postauto.ch
Bus from Chiavenna, Stazione to St. Moritz, Bahnhof
- Ave. Duration
- 1h 38m
- Frequency
- Hourly
- Estimated price
- CHF 5–8
- Website
- https://www.postauto.ch
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.
Related travel guides
Italy Travel Guides
Read the travel guide















