There are 12 ways to get from Spain to Perugia by plane, train, train (Renfe, Trenitalia), bus, car ferry, 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.
Fly Barcelona–El Prat Airport to Florence Peretola Airport, train
best- Fly from Barcelona–El Prat Airport (BCN) to Florence Peretola Airport (FLR)plane BCN - FLR
- Take the train from Firenze S.M.N. to Perugiatrain
7h 49m€65–191Fly Barcelona–El Prat Airport to Fiumicino International Airport, train
cheapest- Fly from Barcelona–El Prat Airport (BCN) to Fiumicino International Airport (FCO)plane BCN - FCO
- Take the train from Roma Termini to Folignotrain
8h 40m€46–173Train
- Take the train from Barcelona-Sants to Lyon Part Dieutrain
- Take the train from Lyon Part Dieu to Torino Porta Susatrain Fr
- Take the train from Torino Porta Susa to Perugiatrain Fr
16h 47m€195–311Bus
- Take the bus from Barcelona to Florencebus FlixBus N758
- Take the bus from Florence to Perugiabus FlixBus N504
17h 20m€109–161Car ferry, train
- Take the carferry from Port de Barcelona to Port of Genoacarferry
- Take the train from Genova P.Za Principe to Pisa Centraletrain Fb / ...
- Take the train from Pisa Centrale to Firenze S.M.N.train Re
- Take the train from Firenze S.M.N. to Perugiatrain
28h 53m€126–205Fly Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Florence Peretola Airport (FLR)plane MAD - FLR
- Take the train from Firenze S.M.N. to Perugiatrain
8h 30m€79–211Fly Barcelona–El Prat Airport to Bologna Guglielmo Marconi Airport, train
- Fly from Barcelona–El Prat Airport (BCN) to Bologna Guglielmo Marconi Airport (BLQ)plane BCN - BLQ
- Take the train from Bologna Centrale to Perugiatrain
8h 27m€58–204Fly Valencia Airport to Fiumicino International Airport, train
- Fly from Valencia Airport (VLC) to Fiumicino International Airport (FCO)plane VLC - FCO
- Take the train from Roma Termini to Folignotrain
8h 57m€52–204Fly Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Fiumicino International Airport (FCO)plane MAD - FCO
- Take the train from Roma Termini to Folignotrain
9h 21m€51–203Fly Valencia Airport to Pisa International Airport, train
- Fly from Valencia Airport (VLC) to Pisa International Airport (PSA)plane VLC - PSA
- Take the train from Pisa Centrale to Firenze S.M.N.train
- Take the train from Firenze S.M.N. to Perugiatrain
9h 20m€84–270Bus via Milan
- Take the bus from Barcelona - North Bus Station to Milano, Autostazione Lampugnanobus BlaBlaCar Bus
- Take the bus from Milan Lampugnano to Perugia Train Station Bus Stopbus Itabus
22h 15m€100–169Drive 1,232.7 km
- Drive from Barcelona to Perugiacar 1,232.7 km
12h 5m€202–292
Spain to Perugia by train
Comparing Your Travel Options
The cheapest way to get from Spain to Perugia is to fly and train which costs €45 - €180 and takes 8h 40m.
The fastest way to get from Spain to Perugia is to fly and train which takes 7h 49m and costs €60 - €200.
No, there is no direct bus from Spain to Perugia. However, there are services departing from Barcelona and arriving at Perugia via Florence. The journey, including transfers, takes approximately 17h 20m.
No, there is no direct train from Spain to Perugia. However, there are services departing from Barcelona Plaça de Catalunya and arriving at Perugia via Barcelona-Sants, Lyon Part Dieu and Torino Porta Susa. The journey, including transfers, takes approximately 16h 47m.
The distance between Spain and Perugia is 969 km. The road distance is 1232.7 km.
The best way to get from Spain to Perugia without a car is to train which takes 16h 47m and costs €190 - €320.
It takes approximately 7h 49m to get from Spain to Perugia, including transfers.
Spain to Perugia bus services, operated by FlixBus, depart from Barcelona station.
Spain to Perugia train services, operated by Renfe Viajeros, depart from Barcelona-Sants station.
The best way to get from Spain to Perugia is to train which takes 16h 47m and costs €190 - €320. Alternatively, you can bus, which costs €100 - €170 and takes 17h 20m.
What companies run services between Spain and Perugia, Italy?
You can take a train from Barcelona Plaça de Catalunya to Perugia via Barcelona-Sants, Lyon Part Dieu, and Torino Porta Susa in around 16h 47m. Alternatively, you can take a bus from Barcelona to Perugia via Florence in around 17h 20m.
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €30–140
Flights from Barcelona–El Prat Airport to Fiumicino International Airport
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- €40–150
Flights from Valencia Airport to Fiumicino International Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- €35–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €50–190
Flights from Valencia Airport to Pisa International Airport
- Ave. Duration
- 1h 50m
- When
- Wednesday, Friday, Sunday, Saturday, Thursday, and Monday
- Estimated price
- €45–190
- Website
- iberia.com
Flights from Barcelona–El Prat Airport to Florence Peretola Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- €40–120
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport
- Ave. Duration
- 2h 16m
- When
- Every day
- Estimated price
- €55–200
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport via Barcelona–El Prat Airport
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- €55–150
Flights from Barcelona–El Prat Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 40m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- €30–130
Flights from Barcelona–El Prat Airport to Fiumicino International Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- €20–120
Flights from Valencia Airport to Fiumicino International Airport via Barcelona–El Prat Airport
- Ave. Duration
- 4h 20m
- When
- Monday, Tuesday, Thursday, and Friday
- Estimated price
- €35–190
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €40–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport via Barcelona–El Prat Airport
- Ave. Duration
- 4h 5m
- When
- Sunday
- Estimated price
- €80–270
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Florence Peretola Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- €40–120
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport
- Ave. Duration
- 2h 16m
- When
- Every day
- Estimated price
- €55–200
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport via Barcelona–El Prat Airport
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- €55–150
Flights from Barcelona–El Prat Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 1h 40m
- When
- Monday, Wednesday, Friday, and Sunday
- Estimated price
- €30–130
Flights from Barcelona–El Prat Airport to Fiumicino International Airport
- Ave. Duration
- 1h 46m
- When
- Every day
- Estimated price
- €20–120
Flights from Valencia Airport to Fiumicino International Airport via Barcelona–El Prat Airport
- Ave. Duration
- 4h 20m
- When
- Monday, Tuesday, Thursday, and Friday
- Estimated price
- €35–190
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €40–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport via Barcelona–El Prat Airport
- Ave. Duration
- 4h 5m
- When
- Sunday
- Estimated price
- €80–270
- Website
- ita-airways.com
Flights from Barcelona–El Prat Airport to Florence Peretola Airport via Fiumicino International Airport
- Ave. Duration
- 4h 20m
- When
- Every day
- Estimated price
- €85–180
Flights from Barcelona–El Prat Airport to Fiumicino International Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €85–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €55–180
- Website
- flyulendo.com
Flights from Barcelona–El Prat Airport to Fiumicino International Airport
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- €21–110
Flights from Valencia Airport to Fiumicino International Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- €23–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €25–140
- Website
- aireuropa.com
Flights from Barcelona–El Prat Airport to Fiumicino International Airport
- Ave. Duration
- 1h 45m
- When
- Every day
- Estimated price
- €85–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- €55–180
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 23m
- Frequency
- Every 4 hours
- Estimated price
- €18–25
- Website
- Trenitalia
Train from Lyon Part Dieu to Torino Porta Susa
- Ave. Duration
- 3h 57m
- Frequency
- Twice daily
- Estimated price
- €35–50
- Website
- Trenitalia
Train from Genova P.Za Principe to Pisa Centrale
- Ave. Duration
- 3h 32m
- Frequency
- Once a week
- Estimated price
- €19–27
- Website
- Trenitalia
Train from Pisa Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 22m
- Frequency
- Every 30 minutes
- Estimated price
- €9–13
- Website
- Trenitalia
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 23m
- Frequency
- Every 4 hours
- Estimated price
- €18–25
- Website
- Trenitalia
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 23m
- Frequency
- Every 4 hours
- Estimated price
- €18–25
- Website
- Trenitalia
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 47m
- Frequency
- Hourly
- Estimated price
- €17–25
- Website
- Trenitalia
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 47m
- Frequency
- Hourly
- Estimated price
- €17–25
- Website
- Trenitalia
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 47m
- Frequency
- Hourly
- Estimated price
- €17–25
- Website
- Trenitalia
Train from Pisa Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 22m
- Frequency
- Every 30 minutes
- Estimated price
- €9–13
- Website
- Trenitalia
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 23m
- Frequency
- Every 4 hours
- Estimated price
- €18–25
- Website
- Trenitalia
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 25m
- Frequency
- Once daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
Train from Genova P.Za Principe to Pisa Centrale
- Ave. Duration
- 2h 37m
- Frequency
- Every 4 hours
- Estimated price
- €17–35
- Website
- Trenitalia Intercity
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 25m
- Frequency
- Once daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 25m
- Frequency
- Once daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
Train from Bologna Centrale to Perugia
- Ave. Duration
- 3h 11m
- Frequency
- Once daily
- Estimated price
- €26–50
- Website
- Trenitalia Intercity
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 59m
- Frequency
- 3 times a day
- Estimated price
- €16–29
- Website
- Trenitalia Intercity
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 59m
- Frequency
- 3 times a day
- Estimated price
- €16–29
- Website
- Trenitalia Intercity
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 59m
- Frequency
- 3 times a day
- Estimated price
- €16–29
- Website
- Trenitalia Intercity
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 25m
- Frequency
- Once daily
- Estimated price
- €16–30
- Website
- Trenitalia Intercity
- Phone
- +39 06 5210550
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- 6 times a week
- Estimated price
- €21–35
- Website
- Trenitalia Frecce
Train from Torino Porta Susa to Perugia
- Ave. Duration
- 4h 40m
- Frequency
- 6 times a week
- Estimated price
- €80–140
- Website
- Trenitalia Frecce
Train from Genova P.Za Principe to Pisa Centrale
- Ave. Duration
- 1h 59m
- Frequency
- Every 4 hours
- Estimated price
- €22–40
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- 6 times a week
- Estimated price
- €21–35
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- 6 times a week
- Estimated price
- €21–35
- Website
- Trenitalia Frecce
Train from Bologna Centrale to Perugia
- Ave. Duration
- 2h 18m
- Frequency
- 6 times a week
- Estimated price
- €30–60
- Website
- Trenitalia Frecce
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- €20–35
- Website
- Trenitalia Frecce
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- 6 times a week
- Estimated price
- €21–35
- Website
- Trenitalia Frecce
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- €80–120
- Website
- Renfe Viajeros
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Barcelona to Florence
- Ave. Duration
- 14h 30m
- Frequency
- Twice daily
- Estimated price
- €95–150
- Website
- Flixbus
Bus from Florence to Perugia
- Ave. Duration
- 1h 50m
- Frequency
- Twice daily
- Estimated price
- €13–20
- Website
- Flixbus
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Barcelona - North Bus Station to Milano, Autostazione Lampugnano
- Ave. Duration
- 14h 35m
- Frequency
- 4 times a day
- Estimated price
- €75–130
- Website
- BlaBlaCar Bus
- Phone
- +39 06 88 93 82 32
- Website
- Itabus S.p.A.
Bus from Milan Lampugnano to Perugia Train Station Bus Stop
- Ave. Duration
- 6h 40m
- Frequency
- 6 times a week
- Estimated price
- €24–45
- Website
- Itabus S.p.A.
- Phone
- +39 010 209 4591
- [email protected]
- Website
- Grandi Navi Veloci
Car ferry from Port de Barcelona to Port of Genoa
- Ave. Duration
- 20h 45m
- Frequency
- Twice a week
- Estimated price
- €80–120
- Website
- Grandi Navi Veloci
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
5 incredible day trips from Florence by train
Read the travel guide
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
Booking & Getting There
Spain to Perugia bus services, operated by FlixBus, arrive at Florence station.
Spain to Perugia train services, operated by Renfe Viajeros, arrive at Lyon Part Dieu station.
Yes, the driving distance between Spain to Perugia is 1233 km. It takes approximately 12h 5m to drive from Spain to Perugia.
Book your Spain to Perugia train tickets online with Omio.
Book your Spain to Perugia bus tickets online with Omio and FlixBus.
There are 2135+ hotels available in Perugia.

































