There are 11 ways to get from Zurich to Perugia by train (Trenitalia), bus, car, plane, or train
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 Reggio Emilia
best- Take the train from Zürich HB to LuganoIc2 / ...
- Take the train from Lugano to Milano CentraleEc
- Take the train from Milano Centrale to Reggio Emilia AvFr
- Take the train from Reggio Emilia Av to PerugiaFr
8h 44m€124–228Bus via Milan
cheapest- Take the bus from Zurich Bus Station to Milano, Autostazione LampugnanoN177 / ...
- Take the bus from Milano, Autostazione Lampugnano to Perugia Train Station Bus StopItabus
11h 15m€30–75Drive 728.9 km
- Drive from Zurich to Perugia728.9 km
7h 18m€125–180Fly Zurich Airport to Florence Peretola Airport, train
- Fly from Zurich Airport (ZRH) to Florence Peretola Airport (FLR)ZRH - FLR
- Take the train from Firenze S.M.N. to Perugia
7h 4m€94–295Train
- Take the train from Zürich HB to Como S. GiovanniEc
- Take the train from Como S.Giovanni to Milano Porta GaribaldiS11
- Take the train from Milano P.Garibaldi to PerugiaFr
8h 44m€134–250Bus
- Take the bus from Zurich to Riccione
- Take the bus from Viale Enrico Berlinguer, Riccione to Perugia - Piazza Partigiani
14h 5m€52Fly Zurich Airport to Fiumicino International Airport, train
- Fly from Zurich Airport (ZRH) to Fiumicino International Airport (FCO)ZRH - FCO
- Take the train from Roma Termini to Foligno
8h 41m€58–237Fly Zurich Airport to Bologna Guglielmo Marconi Airport, train
- Fly from Zurich Airport (ZRH) to Bologna Guglielmo Marconi Airport (BLQ)ZRH - BLQ
- Take the train from Bologna Centrale to Firenze S.M.N.
- Take the train from Firenze S.M.N. to Perugia
7h 38m€105–342Fly Zurich Airport to Milano Malpensa Airport, train
- Fly from Zurich Airport (ZRH) to Milano Malpensa Airport (MXP)ZRH - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Take the train from Milano P.Garibaldi to Perugia
7h 56m€116–293Train to Basel, fly to Fiumicino International Airport, train
- Take the train from Zürich HB to Basel SBB
- Fly from Basel (BSL) to Fiumicino International Airport (FCO)BSL - FCO
- Take the train from Roma Termini to Foligno
9h 39m€78–514Fly Zurich Airport to Raffaello Sanzio Airport, train
- Fly from Zurich Airport (ZRH) to Raffaello Sanzio Airport (AOI)ZRH - AOI
- Take the train from Jesi to Foligno
9h 57m€150–332
Zurich to Perugia by train
Questions & Answers
The cheapest way to get from Zurich to Perugia is to bus via Milan which costs €30 - €75 and takes 11h 15m.
The fastest way to get from Zurich to Perugia is to fly and train which takes 7h 4m and costs €90 - €300.
No, there is no direct bus from Zurich station to Perugia station. However, there are services departing from Zurich Bus Station and arriving at Perugia Train Station Bus Stop via Milano, Autostazione Lampugnano. The journey, including transfers, takes approximately 11h 15m.
No, there is no direct train from Zurich to Perugia. However, there are services departing from Zürich HB and arriving at Perugia via Lugano, Milano Centrale and Reggio Emilia Av. The journey, including transfers, takes approximately 8h 44m.
The distance between Zurich and Perugia is 703 km. The road distance is 728.9 km.
The best way to get from Zurich to Perugia without a car is to train via Reggio Emilia which takes 8h 44m and costs €120 - €230.
It takes approximately 8h 44m to get from Zurich to Perugia, including transfers.
Zurich to Perugia bus services, operated by FlixBus, depart from Zurich Bus Station.
Zurich to Perugia train services, operated by Swiss Federal Railways (SBB CFF FFS), depart from Zürich HB station.
The best way to get from Zurich to Perugia is to train via Reggio Emilia which takes 8h 44m and costs €120 - €230. Alternatively, you can bus via Milan, which costs €30 - €75 and takes 11h 15m.
What companies run services between Zurich, Switzerland and Perugia, Italy?
You can take a train from Zürich HB to Perugia via Lugano, Milano Centrale, and Reggio Emilia Av in around 8h 44m. Alternatively, you can take a bus from Zurich Bus Station to Perugia Train Station Bus Stop via Milano, Autostazione Lampugnano in around 11h 15m.
- Website
- ita-airways.com
Flights from Zurich Airport to Florence Peretola Airport
- Ave. Duration
- 1h 13m
- When
- Every day
- Estimated price
- €75–210
Flights from Zurich Airport to Fiumicino International Airport
- Ave. Duration
- 1h 32m
- When
- Every day
- Estimated price
- €75–240
Flights from Zurich Airport to Fiumicino International Airport via Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 55m
- When
- Tuesday and Wednesday
- Estimated price
- €75–170
Flights from Zurich Airport to Fiumicino International Airport via Florence Peretola Airport
- Ave. Duration
- 3h 20m
- When
- Every day
- Estimated price
- €75–170
Flights from Zurich Airport to Fiumicino International Airport via Venice
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €80–240
Flights from Zurich Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 5m
- When
- Every day
- Estimated price
- €80–420
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €50–190
- Website
- swiss.com
Flights from Zurich Airport to Florence Peretola Airport
- Ave. Duration
- 1h 13m
- When
- Every day
- Estimated price
- €75–210
Flights from Zurich Airport to Fiumicino International Airport
- Ave. Duration
- 1h 32m
- When
- Every day
- Estimated price
- €75–240
Flights from Zurich Airport to Fiumicino International Airport via Venice
- Ave. Duration
- 3h 30m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €80–240
Flights from Zurich Airport to Fiumicino International Airport via Geneva
- Ave. Duration
- 3h 45m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €80–240
Flights from Zurich Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 5m
- When
- Every day
- Estimated price
- €80–420
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €50–190
- Website
- lufthansa.com
Flights from Zurich Airport to Florence Peretola Airport via Munich
- Ave. Duration
- 3h 5m
- When
- Every day
- Estimated price
- €120–420
Flights from Basel to Fiumicino International Airport via Munich
- Ave. Duration
- 3h 45m
- When
- Every day
- Estimated price
- €55–300
Flights from Zurich Airport to Raffaello Sanzio Airport via Munich
- Ave. Duration
- 5h 15m
- When
- Thursday to Saturday
- Estimated price
- €100–470
- Website
- easyjet.com
Flights from Zurich Airport to Fiumicino International Airport
- Ave. Duration
- 1h 35m
- When
- Every day
- Estimated price
- €35–130
Flights from Basel to Fiumicino International Airport
- Ave. Duration
- 1h 36m
- When
- Every day
- Estimated price
- €45–150
- Website
- airdolomiti.it
Flights from Zurich Airport to Florence Peretola Airport via Munich
- Ave. Duration
- 3h 10m
- When
- Tuesday, Wednesday, Thursday, and Saturday
- Estimated price
- €120–420
Flights from Zurich Airport to Raffaello Sanzio Airport via Munich
- Ave. Duration
- 7h 5m
- When
- Thursday and Saturday
- Estimated price
- €140–470
- Website
- ethiopianairlines.com
Flights from Zurich Airport to Milano Malpensa Airport
- Ave. Duration
- 1h 10m
- When
- Every day
- Estimated price
- €65–150
- Website
- flyulendo.com
Flights from Zurich Airport to Raffaello Sanzio Airport via Tirana
- Ave. Duration
- 5h 10m
- When
- Tuesday, Thursday, Friday, and Sunday
- Estimated price
- €110–430
- Website
- dat.dk
Flights from Zurich Airport to Raffaello Sanzio Airport via Fiumicino International Airport
- Ave. Duration
- 5h 30m
- When
- Monday to Friday
- Estimated price
- €100–400
- Website
- ryanair.com
Flights from Zurich Airport to Raffaello Sanzio Airport via Catania
- Ave. Duration
- 5h 55m
- When
- Monday
- Estimated price
- €320–750
- Phone
- +41 848 446 688
- Website
- sbb.ch
Train from Zürich HB to Lugano
- Ave. Duration
- 1h 53m
- Frequency
- Hourly
- Estimated price
- €45–80
- Website
- https://www.sbb.ch/en
Train from Lugano to Milano Centrale
- Ave. Duration
- 1h 15m
- Frequency
- Hourly
- Estimated price
- €23–45
- Website
- https://www.sbb.ch/en
Train from Zürich HB to Como S. Giovanni
- Ave. Duration
- 2h 35m
- Frequency
- Hourly
- Estimated price
- €70–130
- Website
- https://www.sbb.ch/en
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 49 min
- Frequency
- Twice a week
- Estimated price
- €23–45
- Website
- https://www.sbb.ch/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Milano Centrale to Reggio Emilia Av
- Ave. Duration
- 44 min
- Frequency
- Hourly
- Estimated price
- €22–35
- Schedules at
- trenitalia.com
Train from Reggio Emilia Av to Perugia
- Ave. Duration
- 2h 48m
- Frequency
- 6 times a week
- Estimated price
- €40–65
- Schedules at
- trenitalia.com
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 34m
- Frequency
- 6 times a week
- Estimated price
- €16–35
- Schedules at
- trenitalia.com
Train from Milano P.Garibaldi to Perugia
- Ave. Duration
- 3h 42m
- Frequency
- 6 times a week
- Estimated price
- €40–80
- Schedules at
- trenitalia.com
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- €23–35
- Schedules at
- trenitalia.com
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 37 min
- Frequency
- Every 30 minutes
- Estimated price
- €15–40
- Schedules at
- trenitalia.com
Train from Jesi to Foligno
- Ave. Duration
- 1h 11m
- Frequency
- Once daily
- Estimated price
- €11–50
- Schedules at
- trenitalia.com
- Super Economy
- €11–16
- Base Standard
- €26–35
- Base Premium
- €30–50
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Milano Centrale to Reggio Emilia Av
- Ave. Duration
- 46 min
- Frequency
- Every 3 hours
- Estimated price
- €16–40
- Website
- https://www.italotreno.it/en
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 46 min
- Frequency
- Once a week
- Estimated price
- €15–35
- Website
- https://www.italotreno.it/en
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 14m
- Frequency
- Every 4 hours
- Estimated price
- €10–15
- Website
- https://www.trenitalia.com/en.html
Train from Roma Termini to Foligno
- Ave. Duration
- 2h 22m
- Frequency
- Hourly
- Estimated price
- €14–25
- Website
- https://www.trenitalia.com/en.html
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 51m
- Frequency
- Twice daily
- Estimated price
- €6–10
- Website
- https://www.trenitalia.com/en.html
Train from Jesi to Foligno
- Ave. Duration
- 1h 20m
- Frequency
- Every 4 hours
- Estimated price
- €7–11
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 25m
- Frequency
- Twice daily
- Estimated price
- €11–22
- Website
- https://www.trenitalia.com/en.html
Train from Roma Termini to Foligno
- Ave. Duration
- 2h 10m
- Frequency
- 3 times a day
- Estimated price
- €9–23
- Website
- https://www.trenitalia.com/en.html
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 16m
- Frequency
- Once daily
- Estimated price
- €9–15
- Website
- https://www.trenitalia.com/en.html
Train from Jesi to Foligno
- Ave. Duration
- 1h 25m
- Frequency
- Twice daily
- Estimated price
- €8–11
- Website
- https://www.trenitalia.com/en.html
- 2nd Class
- €8–11
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Como S.Giovanni to Milano Porta Garibaldi
- Ave. Duration
- 1h 6m
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +39 06 68475475
- ufficiogruppi@trenitalia.it
- Website
- trenitalia.com
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 59 min
- Frequency
- Once daily
- Estimated price
- €27–70
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €45–70
- 2nd Class
- €27–40
- Phone
- +39 02-72494949
- Website
- malpensaexpress.it
Train from Malpensa Aeroporto T1 to Milano Porta Garibaldi
- Ave. Duration
- 42 min
- Frequency
- Hourly
- Estimated price
- €15
- Website
- https://www.malpensaexpress.it/en/
- Phone
- +49 (0) 7531 915109
- info@sbb-deutschland.de
- Website
- sbb-deutschland.de
Train from Zürich HB to Basel SBB
- Ave. Duration
- 53 min
- Frequency
- Every 4 hours
- Estimated price
- €8–11
- Schedules at
- sbb-deutschland.de
- Phone
- +49 30 311 682904
- Website
- bahn.de
Train from Zürich HB to Basel SBB
- Ave. Duration
- 53 min
- Frequency
- 3 times a day
- Estimated price
- €28–32
- Website
- https://int.bahn.de/en
- Phone
- +43 51717
- Website
- nightjet.com
Train from Zürich HB to Basel SBB
- Ave. Duration
- 53 min
- Frequency
- 3 times a day
- Estimated price
- €25–260
- Website
- https://www.nightjet.com/en/#/home
- Sleeper Carriage
- €250–260
- Couchette Carriage
- €120–140
- Seating Carriage
- €25–35
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Zurich Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 3h 35m
- Frequency
- Hourly
- Estimated price
- €21–50
- Website
- https://www.flixbus.co.uk
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Zurich Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 5h 10m
- Frequency
- Once daily
- Estimated price
- €18–45
- Website
- https://www.itabus.it/en/home
Bus from Milano, Autostazione Lampugnano to Perugia Train Station Bus Stop
- Ave. Duration
- 6h 40m
- Frequency
- 6 times a week
- Estimated price
- €12–27
- Website
- https://www.itabus.it/en/home
- Phone
- +420 222 222 221
- info@regiojet.cz
- Website
- regiojet.com
Bus from Zurich Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 4h 25m
- Frequency
- Once a week
- Estimated price
- €23–45
- Website
- https://regiojet.com/
- Phone
- +39 0825-26416
- INFORMAZIONI@BARTOLINIPULLMAN.IT
- Website
- bartolinipullman.it
Bus from Zurich to Riccione
- Ave. Duration
- 8h 30m
- Frequency
- 3 times a week
- Estimated price
- €50
- Schedules at
- bartolinipullman.it
- Phone
- +39 089 233 899
- salerno@autolineecurcio.it
- Website
- autolineecurcio.it
Bus from Viale Enrico Berlinguer, Riccione to Perugia - Piazza Partigiani
- Ave. Duration
- 4h 35m
- Frequency
- Once daily
- Estimated price
- €2
- Website
- https://www.autolineecurcio.it/
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
Heading to Europe? Read this before you buy a Eurail Pass
Read the travel guide
More Questions & Answers
Zurich to Perugia bus services, operated by FlixBus, arrive at Milano, Autostazione Lampugnano station.
Zurich to Perugia train services, operated by Swiss Federal Railways (SBB CFF FFS), arrive at Lugano station.
Yes, the driving distance between Zurich to Perugia is 729 km. It takes approximately 7h 18m to drive from Zurich to Perugia.
Book your Zurich to Perugia train tickets online with Omio.
Book your Zurich to Perugia bus tickets online with Omio.
There are 1975+ hotels available in Perugia.




























































