There are 5 ways to get from Milan to Locarno by train, bus, car, or train (Trenitalia)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Milano Centrale to LocarnoRe80
1h 55mCHF 7–10Bus
- Take the bus from Milano, Autostazione Lampugnano to Bellinzona076
- Take the bus from Bellinzona, Stazione to Locarno, Debarcadero311
3h 1mCHF 16–39Drive 106.1 km
- Drive from Milan to Locarno106.1 km
1h 22mCHF 17–25Train via Lugano
- Take the train from Milano Centrale to LuganoEc
- Take the train from Lugano to LocarnoRe80
2h 3mCHF 25–80Train via Como
- Take the train from Milano Porta Garibaldi to Como CamerlataS11
- Take the train from Como Camerlata to LocarnoRe80
2h 41mCHF 25–42
Milan to Locarno by train
Questions & Answers
The cheapest way to get from Milan to Locarno is to train which costs SFr 7 - SFr 10 and takes 1h 55m.
The fastest way to get from Milan to Locarno is to drive which takes 1h 22m and costs SFr 16 - SFr 25.
Yes, there is a direct train departing from Milano Centrale and arriving at Locarno. Services depart hourly, and operate every day. The journey takes approximately 1h 55m.
The distance between Milan and Locarno is 111 km. The road distance is 106.1 km.
The best way to get from Milan to Locarno without a car is to train which takes 1h 55m and costs SFr 7 - SFr 10.
The train from Milano Centrale to Locarno takes 1h 55m including transfers and departs hourly.
Milan to Locarno train services, operated by Trenitalia EuroCity, depart from Milano Centrale station.
The best way to get from Milan to Locarno is to train which takes 1h 55m and costs SFr 7 - SFr 10. Alternatively, you can bus, which costs SFr 15 - SFr 40 and takes 3h 1m.
Milan to Locarno train services, operated by Trenitalia EuroCity, arrive at Lugano station.
Yes, the driving distance between Milan to Locarno is 106 km. It takes approximately 1h 22m to drive from Milan to Locarno.
What companies run services between Milan, Italy and Locarno, Switzerland?
Swiss Federal Railways (SBB CFF FFS) operates a train from Milano Centrale to Locarno hourly. Tickets cost CHF 35–70 and the journey takes 1h 55m. Trenord S.r.l. also services this route hourly. Alternatively, you can take a bus from Milano, Autostazione Lampugnano to Locarno, Debarcadero via Bellinzona, Castione-Arbedo, Bellinzona, and Bellinzona, Stazione in around 3h 1m.
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 35–70
- Website
- https://www.sbb.ch/en
Train from Lugano to Locarno
- Ave. Duration
- 33 min
- Frequency
- Every 30 minutes
- Estimated price
- CHF 17–20
- Website
- https://www.sbb.ch/en
Train from Milano Porta Garibaldi to Como Camerlata
- Ave. Duration
- 42 min
- Frequency
- Twice a week
- Estimated price
- CHF 20–40
- Website
- https://www.sbb.ch/en
Train from Como Camerlata to Locarno
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- CHF 27–50
- Website
- https://www.sbb.ch/en
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Milano Centrale to Locarno
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 7–10
- Website
- https://www.trenord.it/en/
Train from Lugano to Locarno
- Ave. Duration
- 33 min
- Frequency
- Hourly
- Estimated price
- CHF 3–5
- Website
- https://www.trenord.it/en/
Train from Milano Porta Garibaldi to Como Camerlata
- Ave. Duration
- 1h 1m
- Frequency
- Hourly
- Estimated price
- CHF 3–5
- Website
- https://www.trenord.it/en/
Train from Como Camerlata to Locarno
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- CHF 5–7
- Website
- https://www.trenord.it/en/
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Milano Centrale to Lugano
- Ave. Duration
- 1h 18m
- Frequency
- Every 3 hours
- Estimated price
- CHF 21–60
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- CHF 40–60
- 2nd Class
- CHF 21–29
Rome2Rio's guide to FlixBus
Contact Details
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Milano, Autostazione Lampugnano to Bellinzona
- Ave. Duration
- 1h 45m
- Frequency
- Once daily
- Estimated price
- CHF 11–35
- Website
- https://www.flixbus.co.uk
- Phone
- +41 (0)91 756 04 00
- fart@centovalli.ch
- Website
- centovalli.ch
Bus from Bellinzona, Stazione to Locarno, Debarcadero
- Ave. Duration
- 45 min
- Frequency
- Hourly
- Estimated price
- CHF 6–9
- Website
- Autolinee FART
- Phone
- +41 (0)848 818 818
- info@postauto.ch
- Website
- postauto.ch
Bus from Bellinzona, Stazione to Locarno, Debarcadero
- Ave. Duration
- 45 min
- Frequency
- Hourly
- Estimated price
- CHF 3–5
- 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
Italian Lakes: Getting around by train
Read the travel guide
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Book your Milan to Locarno train tickets online with Omio.
There are 2458+ hotels available in Locarno.























