There are 4 ways to get from Milan to San Pietro 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 via Colico
best- Take the train from Milano Centrale to Colicotrain Re8
- Take the train from Colico to Chiavennatrain R11 / ...
3h 55m€10–12Bus
- Take the bus from Milano, Autostazione Lampugnano to Luganobus BlaBlaCar Bus
- Take the bus from Lugano, Stazione Nord to Chiavenna, Stazionebus 631
5h 42m€19–28Drive 110.8 km
- Drive from Milan to San Pietrocar 110.8 km
1h 41m€18–25Train
- Take the train from Milano Porta Garibaldi to Chiavennatrain R13
3h 56m€10–12
Questions & Answers
The cheapest way to get from Milan to San Pietro is to train which costs €10 - €13 and takes 3h 56m.
The fastest way to get from Milan to San Pietro is to drive which takes 1h 41m and costs €17 - €25.
No, there is no direct bus from Milan to San Pietro. However, there are services departing from Milano, Autostazione Lampugnano and arriving at San Pietro via Lugano, Via Ciani/Cornaredo, Lugano, Stazione Nord and Chiavenna FS. The journey, including transfers, takes approximately 5h 42m.
No, there is no direct train from Milan to San Pietro. However, there are services departing from Milano Centrale and arriving at Chiavenna via Colico. The journey, including transfers, takes approximately 3h 55m.
The distance between Milan and San Pietro is 123 km. The road distance is 110.8 km.
The best way to get from Milan to San Pietro without a car is to train via Colico which takes 3h 55m and costs €9 - €13.
It takes approximately 3h 55m to get from Milan to San Pietro, including transfers.
Milan to San Pietro bus services, operated by BlaBlaCar Bus, depart from Milano, Autostazione Lampugnano station.
Milan to San Pietro train services, operated by Trenord, depart from Milano Centrale station.
The best way to get from Milan to San Pietro is to train via Colico which takes 3h 55m and costs €9 - €13. Alternatively, you can bus, which costs €18 - €28 and takes 5h 42m.
What companies run services between Milan, Italy and San Pietro, Lombardy, Italy?
You can take a train from Milano Centrale to San Pietro via Colico, Chiavenna, and Chiavenna FS in around 3h 55m. Alternatively, you can take a bus from Milano, Autostazione Lampugnano to San Pietro via Lugano, Lugano, Via Ciani/Cornaredo, Lugano, Stazione, Lugano, Stazione Nord, and Chiavenna FS in around 5h 42m.
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Milano Centrale to Colico
- Ave. Duration
- 1h 26m
- Frequency
- Hourly
- Estimated price
- €6–9
- Website
- Trenord
Train from Colico to Chiavenna
- Ave. Duration
- 32 min
- Frequency
- Hourly
- Estimated price
- €1–2
- Website
- Trenord
Train from Milano Porta Garibaldi to Chiavenna
- Ave. Duration
- 2h 44m
- Frequency
- Once a week
- Estimated price
- €8–11
- Website
- Trenord
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Milano, Autostazione Lampugnano to Lugano
- Ave. Duration
- 1h 10m
- Frequency
- 4 times a day
- Estimated price
- €6–12
- Website
- BlaBlaCar Bus
- Phone
- +41 (0)848 818 818
- [email protected]
- Website
- PostAuto AG
Bus from Lugano, Stazione Nord to Chiavenna, Stazione
- Ave. Duration
- 1h 55m
- Frequency
- Once daily
- Estimated price
- €7–11
- Website
- PostAuto AG
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
Italy Travel Guides
Read the travel guide
Italian Lakes: Getting around by train
Read the travel guide
More Questions & Answers
Milan to San Pietro bus services, operated by BlaBlaCar Bus, arrive at Lugano station.
Milan to San Pietro train services, operated by Trenord, arrive at Colico station.
Yes, the driving distance between Milan to San Pietro is 111 km. It takes approximately 1h 41m to drive from Milan to San Pietro.
There are 2459+ hotels available in San Pietro.

















