There are 4 ways to get from St. Moritz to Lake Maggiore 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.
Bus
best- Take the bus from St. Moritz, Bahnhof to Lugano, Stazione Nordbus 631
4h 21m€14–55Train, bus
- Take the train from St. Moritz to Thusistrain Ir38 / ...
- Take the bus from Thusis, Bahnhof to Bellinzona, Stazionebus 171
4h 44mDrive 220.5 km
- Drive from St. Moritz to Stresacar 220.5 km
3h 7m€39–56Train
- Take the train from St. Moritz to Churtrain Gex / ...
- Take the train from Chur to Zürich HBtrain Ic3 / ...
- Take the train from Zürich HB to Bellinzonatrain Ec / ...
6h 4m€111–216
St. Moritz to Lake Maggiore by bus and train
Questions & Answers
The cheapest way to get from St. Moritz to Lake Maggiore is to bus which costs €14 - €55 and takes 4h 21m.
The fastest way to get from St. Moritz to Lake Maggiore is to drive which takes 3h 7m and costs €35 - €60.
No, there is no direct bus from St. Moritz to Lake Maggiore. However, there are services departing from St. Moritz, Bahnhof and arriving at Lugano, Stazione Nord via . The journey, including transfers, takes approximately 4h 21m.
No, there is no direct train from St. Moritz to Lake Maggiore. However, there are services departing from St. Moritz and arriving at Locarno via Chur, Zürich HB and Bellinzona. The journey, including transfers, takes approximately 6h 4m.
The distance between St. Moritz and Lake Maggiore is 164 km. The road distance is 220.5 km.
The best way to get from St. Moritz to Lake Maggiore without a car is to bus which takes 4h 21m and costs €14 - €55.
It takes approximately 4h 21m to get from St. Moritz to Lake Maggiore, including transfers.
St. Moritz to Lake Maggiore bus services, operated by PostAuto AG, depart from St. Moritz, Bahnhof station.
St. Moritz to Lake Maggiore train services, operated by Rhätische Bahn, depart from St. Moritz station.
The best way to get from St. Moritz to Lake Maggiore is to bus which takes 4h 21m and costs €14 - €55. Alternatively, you can train, which costs €110 - €220 and takes 6h 4m.
What companies run services between St. Moritz, Switzerland and Lake Maggiore, Italy?
PostAuto AG operates a bus from St. Moritz, Bahnhof to Lugano, Stazione Nord once daily. Tickets cost €11–16 and the journey takes 3h 35m. Alternatively, you can take a train from St. Moritz to Locarno via Chur, Zürich HB, and Bellinzona in around 6h 4m.
- Phone
- +41 81 288 65 65
- [email protected]
- Website
- rhb.ch
Train from St. Moritz to Thusis
- Ave. Duration
- 1h 26m
- Frequency
- Hourly
- Website
- https://www.rhb.ch/en/
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Hourly
- Website
- https://www.rhb.ch/en/
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from St. Moritz to Chur
- Ave. Duration
- 1h 57m
- Frequency
- Once daily
- Estimated price
- €30–95
- Website
- https://www.sbb.ch/en
Train from Chur to Zürich HB
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €40–130
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 39m
- Frequency
- Hourly
- Estimated price
- €55–170
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 580 70 70
- Website
- sob.ch
Train from Chur to Zürich HB
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- €35–55
- Schedules at
- sob.ch
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 3 hours
- Estimated price
- €40–60
- Schedules at
- sob.ch
- Phone
- +41 (0)848 818 818
- [email protected]
- Website
- postauto.ch
Bus from St. Moritz, Bahnhof to Lugano, Stazione Nord
- Ave. Duration
- 3h 35m
- Frequency
- Once daily
- Estimated price
- €11–16
- Website
- https://www.postauto.ch
Bus from Thusis, Bahnhof to Bellinzona, Stazione
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- €8–12
- Website
- https://www.postauto.ch
Want to know more about travelling around Italy
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
Italian Lakes: Getting around by train
Read the travel guide
Italy Travel Guides
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
More Questions & Answers
St. Moritz to Lake Maggiore bus services, operated by PostAuto AG, arrive at Lugano, Stazione Nord station.
St. Moritz to Lake Maggiore train services, operated by Rhätische Bahn, arrive at Chur station.
Yes, the driving distance between St. Moritz to Lake Maggiore is 221 km. It takes approximately 3h 7m to drive from St. Moritz to Lake Maggiore.
Book your St. Moritz to Lake Maggiore train tickets online with Omio.
Book your St. Moritz to Lake Maggiore bus tickets online with Omio.
There are 5259+ hotels available in Lake Maggiore.


















