There are 8 ways to get from Perugia to Locarno by train (Trenitalia), bus, train, car, or plane
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 Florence
best- Take the train from Perugia to Firenze S.M.N.
- Take the train from Florence Santa Maria Novella to Milano Centrale
- Take the train from Milano Centrale to Locarno
7h 25mCHF 41–104Bus
cheapest- Take the bus from Perugia Train Station Bus Stop to Milano, Autostazione LampugnanoItabus
- Take the bus from Milano, Autostazione Lampugnano to Bellinzona076
10h 41mCHF 26–65Bus, train
- Take the bus from Perugia to Milano, San Donato M3N539 / ...
- Take the train from Milano Centrale to LocarnoRe 80
9h 23mCHF 32–68Drive 554.9 km
- Drive from Perugia to Locarno554.9 km
5h 34mCHF 89–128Bus to Fiumicino International Airport, fly to Milano Malpensa Airport, train
- Take the bus from Perugia to Fiumicino Aeroporto T3
- Fly from Fiumicino International Airport (FCO) to Milano Malpensa Airport (MXP)FCO - MXP
- Take the train from Malpensa Aeroporto T1 to Mendrisio
- Take the train from Mendrisio to Locarno
7h 18mCHF 68–224Train
- Take the train from Perugia to Milano CentraleIc
- Take the train from Milano Centrale to LocarnoRe 80
8h 13mCHF 38–76Bus to Fiumicino International Airport, fly to Milan Linate Airport, train
- Take the bus from Perugia to Fiumicino Aeroporto T3
- Fly from Fiumicino International Airport (FCO) to Milan Linate Airport (LIN)FCO - LIN
- Take the train from Monza to Locarno
7h 50mCHF 73–228Train to Florence Peretola Airport, fly to Zurich Airport, train
- Take the train from Perugia to Firenze S.M.N.
- Fly from Florence Peretola Airport (FLR) to Zurich Airport (ZRH)FLR - ZRH
- Take the train from Zürich HB to Bellinzona
8h 35mCHF 128–345
Perugia to Locarno by train
Questions & Answers
The cheapest way to get from Perugia to Locarno is to bus which costs SFr 26 - SFr 70 and takes 10h 41m.
The fastest way to get from Perugia to Locarno is to drive which takes 5h 34m and costs SFr 85 - SFr 130.
No, there is no direct train from Perugia to Locarno. However, there are services departing from Perugia and arriving at Locarno via Florence Santa Maria Novella and Milano Centrale. The journey, including transfers, takes approximately 7h 25m.
The distance between Perugia and Locarno is 566 km. The road distance is 554.9 km.
The best way to get from Perugia to Locarno without a car is to train via Florence which takes 7h 25m and costs SFr 40 - SFr 110.
It takes approximately 7h 25m to get from Perugia to Locarno, including transfers.
Perugia to Locarno train services, operated by Trenitalia S.p.A., depart from Perugia station.
The best way to get from Perugia to Locarno is to train via Florence which takes 7h 25m and costs SFr 40 - SFr 110. Alternatively, you can bus, which costs SFr 26 - SFr 70 and takes 10h 41m.
Perugia to Locarno train services, operated by Trenitalia S.p.A., arrive at Firenze S.M.N. station.
Yes, the driving distance between Perugia to Locarno is 555 km. It takes approximately 5h 34m to drive from Perugia to Locarno.
What companies run services between Perugia, Italy and Locarno, Switzerland?
You can take a train from Perugia to Locarno via Florence Santa Maria Novella and Milano Centrale in around 7h 25m. Alternatively, you can take a bus from Perugia Train Station Bus Stop to Locarno, Debarcadero via Milano, Autostazione Lampugnano, Bellinzona, Castione-Arbedo, Bellinzona, and Bellinzona, Stazione in around 10h 41m.
- Website
- ita-airways.com
Flights from Fiumicino International Airport to Milan Linate Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- CHF 40–150
Flights from Fiumicino International Airport to Milan Linate Airport via Naples
- Ave. Duration
- 3h 20m
- When
- Every day
- Estimated price
- CHF 40–150
Flights from Florence Peretola Airport to Zurich Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- CHF 70–200
Flights from Florence Peretola Airport to Zurich Airport via Fiumicino International Airport
- Ave. Duration
- 3h 22m
- When
- Monday to Saturday
- Estimated price
- CHF 65–220
- Website
- aeroitalia.com
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 35–250
- Website
- flexflight.dk
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- CHF 35–250
- Website
- lufthansa.com
Flights from Fiumicino International Airport to Milan Linate Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- CHF 40–150
Flights from Florence Peretola Airport to Zurich Airport via Munich
- Ave. Duration
- 3h 5m
- When
- Every day
- Estimated price
- CHF 120–390
- Website
- swiss.com
Flights from Florence Peretola Airport to Zurich Airport
- Ave. Duration
- 1h 16m
- When
- Every day
- Estimated price
- CHF 70–200
Flights from Florence Peretola Airport to Zurich Airport via Fiumicino International Airport
- Ave. Duration
- 3h 20m
- When
- Tuesday, Wednesday, Friday, and Saturday
- Estimated price
- CHF 65–220
- Website
- neosair.it
Flights from Fiumicino International Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 15m
- When
- Monday to Wednesday
- Estimated price
- CHF 150–370
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 2h 7m
- Frequency
- Every 4 hours
- Estimated price
- CHF 9–14
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 29m
- Frequency
- Once daily
- Estimated price
- CHF 14–20
- Website
- https://www.trenitalia.com/en.html
Train from Perugia to Milano Centrale
- Ave. Duration
- 5h 38m
- Frequency
- Once daily
- Estimated price
- CHF 30–70
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Perugia to Firenze S.M.N.
- Ave. Duration
- 1h 37m
- Frequency
- 6 times a week
- Estimated price
- CHF 15–29
- Schedules at
- trenitalia.com
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Florence Santa Maria Novella to Milano Centrale
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- CHF 25–65
- Website
- https://www.italotreno.it/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 Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 4–6
- Website
- https://www.trenord.it/en/
Train from Monza to Locarno
- Ave. Duration
- 1h 45m
- Frequency
- Hourly
- Estimated price
- CHF 5–7
- Website
- https://www.trenord.it/en/
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Malpensa Aeroporto T1 to Mendrisio
- Ave. Duration
- 1h 8m
- Frequency
- Hourly
- Estimated price
- CHF 24–45
- Website
- https://www.sbb.ch/en
Train from Mendrisio to Locarno
- Ave. Duration
- 57 min
- Frequency
- Hourly
- Estimated price
- CHF 19–22
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Bellinzona
- Ave. Duration
- 1h 37m
- Frequency
- Hourly
- Estimated price
- CHF 35–65
- Website
- https://www.sbb.ch/en
- Phone
- +41 58 580 70 70
- info@sob.ch
- Website
- sob.ch
Train from Zürich HB to Bellinzona
- Ave. Duration
- 2h 55m
- Frequency
- Every 4 hours
- Schedules at
- sob.ch
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Perugia to Milano, San Donato M3
- Ave. Duration
- 6h 25m
- Frequency
- Twice daily
- Estimated price
- CHF 22–55
- Website
- https://www.flixbus.co.uk
Bus from Perugia to Fiumicino Aeroporto T3
- Ave. Duration
- 2h 25m
- Frequency
- 6 times a week
- Estimated price
- CHF 24–60
- Website
- https://www.flixbus.co.uk
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
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Perugia Train Station Bus Stop to Milano, Autostazione Lampugnano
- Ave. Duration
- 6h 40m
- Frequency
- Once daily
- Estimated price
- CHF 11–23
- Website
- https://www.itabus.it/en/home
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
5 incredible day trips from Florence by train
Read the travel guide
Italy Travel Guides
Read the travel guide
More Questions & Answers
There are 2458+ hotels available in Locarno.




































