There are 4 ways to get from Milan to Locarno 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.

Recommended option

Train  •  2 h 16 min

  1. Take the train from Milano Centrale to Bellinzona Eurocity / ...

$47 - $79

Cheapest option

Bus FlixBus, line 311 bus  •  4 h 40 min

  1. Take the bus from Milan, Milan to Bellinzona 414 / ...
  2. Take the line 311 bus from Bellinzona, Via Pellandini to Locarno, Via della Pace 311

$16 - $50

2 alternative options

Bus Autolinee Gambioli, line 311 bus  •  2 h 46 min

  1. Take the bus from Famagosta to Bellinzona
  2. Take the line 311 bus from Bellinzona, Via Pellandini to Locarno, Via della Pace 311

$20 - $30

Drive  •  1 h 25 min

  1. Drive from Milan to Locarno 71.8 miles

$17 - $25

What companies run services between Milan, Italy and Locarno, Switzerland?

Trenitalia Eurocity operates a train from Milan to Locarno every 3 hours. Tickets cost $30 - $55 and the journey takes 1 h 33 min. Alternatively, you can take a bus from Milan to Locarno via Bellinzona and Bellinzona, Via Pellandini in around 2 h 46 min.

Train operators
Bus operators
Autolinee Gambioli
Phone
+41 (0) 79.71.85.806
Email
info@autolineegambioli.it
Website
autolineegambioli.it
Bus from Famagosta to Bellinzona
Ave. Duration
1 h 35 min
Frequency
Once a week
Estimated price
$11 - $18
Schedules at
autolineegambioli.it
Swiss PostAuto
Email
info@postauto.ch
Website
postauto.ch
Bus from Bellinzona, Via Pellandini to Locarno, Via della Pace
Ave. Duration
40 min
Frequency
Hourly
Estimated price
$8 - $13
Schedules at
fahrplan.sbb.ch
FlixBus
Phone
+49 1807 123 99 123
Email
info@flixbus.de
Website
flixbus.de
Bus from Milan, Milan to Bellinzona
Ave. Duration
2 h 15 min
Frequency
Twice daily
Estimated price
$6 - $11
Website
flixbus.co.uk

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.

Questions & Answers

The distance between Milan and Locarno is 84 km. The road distance is 115 km.

The cheapest way to get from Milan to Locarno is to drive which costs 14€ - 22€ and takes 1 h 25 min.

The quickest way to get from Milan to Locarno is to drive which takes 1 h 25 min and costs 14€ - 22€.

No, there is no direct train from Milan to Locarno. However, there are services departing from Milano Centrale and arriving at Locarno via Bellinzona. The journey, including transfers, takes approximately 2 h 16 min.

No, there is no direct bus from Milan to Locarno. However, there are services departing from Famagosta and arriving at Locarno, Via della Pace via Bellinzona, Via Pellandini. The journey, including transfers, takes approximately 2 h 46 min.

It takes approximately 2 h 16 min to get from Milan to Locarno, including transfers.