There are 10 ways to get from Madrid to Perugia by plane, train, train (Renfe, Ouigo, Trenitalia), 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.
Fly to Florence Peretola Airport, train
best- 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 3m€66–190Fly to Fiumicino International Airport, train
cheapest- 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 11m€55–185Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- 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
19h 45m€189–454Bus via Barcelona
- Take the bus from Madrid, Avenida de América to Barcelona, Estació d'Autobusos Nordbus
- Take the bus from Barcelona - North Bus Station to Florence Villa Constanza Bus Stationbus
- Take the bus from Florence Villa Constanza Bus Station to Perugiabus 443 / ...
28h 55m€91–188Drive 1,791.4 km
- Drive from Madrid to Perugiacar 1,791.4 km
17h 44m€276–399Fly to Bologna Guglielmo Marconi Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Bologna Guglielmo Marconi Airport (BLQ)plane MAD - BLQ
- Take the train from Bologna Centrale to Firenze S.M.N.train
- Take the train from Firenze S.M.N. to Perugiatrain
8h 49m€73–268Fly to Pisa International Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Pisa International Airport (PSA)plane MAD - PSA
- Take the train from Pisa Centrale to Firenze S.M.N.train
- Take the train from Firenze S.M.N. to Perugiatrain
9h 21m€83–257Fly to Milan Linate Airport, train
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milan Linate Airport (LIN)plane MAD - LIN
- Take the train from Milano P.Garibaldi to Perugiatrain
9h 28m€110–278Train, bus
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Marseille St Charlestrain
- Take the bus from Marseille, Gare de Marseille-Saint-Charles to Florencebus
- Take the train from Firenze S.M.N. to Perugiatrain
22h 2m€134–222Bus
- Take the bus from Madrid Mendez Alvaro Estacion Sur to Milano, Autostazione Lampugnanobus Union Ivkoni - Unibus 3419 / ...
- Take the bus from Milano, Autostazione Lampugnano to Perugia Train Station Bus Stopbus Itabus
32h 10m€83–155
Madrid to Perugia by train
Questions & Answers
The cheapest way to get from Madrid to Perugia is to fly and train which costs €65 - €190 and takes 8h 3m.
The fastest way to get from Madrid to Perugia is to fly and train which takes 8h 3m and costs €65 - €190.
No, there is no direct bus from Madrid to Perugia. However, there are services departing from Madrid, Avenida de América and arriving at Perugia via Barcelona - North Bus Station and Florence Villa Constanza Bus Station. The journey, including transfers, takes approximately 28h 55m.
No, there is no direct train from Madrid to Perugia. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Perugia via Barcelona-Sants, Lyon Part Dieu and Torino Porta Susa. The journey, including transfers, takes approximately 19h 45m.
The distance between Madrid and Perugia is 1437 km. The road distance is 1791.4 km.
The best way to get from Madrid to Perugia without a car is to train which takes 19h 45m and costs €180 - €460.
It takes approximately 8h 3m to get from Madrid to Perugia, including transfers.
Madrid to Perugia bus services, operated by ALSA, depart from Madrid, Avenida de América station.
Madrid to Perugia train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Perugia is to train which takes 19h 45m and costs €180 - €460. Alternatively, you can bus via Barcelona, which costs €90 - €190 and takes 28h 55m.
What companies run services between Madrid, Spain and Perugia, Italy?
You can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Perugia via Barcelona-Sants, Lyon Part Dieu, and Torino Porta Susa in around 19h 45m. Alternatively, you can take a bus from Madrid, Avenida de América to Perugia via Barcelona - North Bus Station and Florence Villa Constanza Bus Station in around 28h 55m.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport
- Ave. Duration
- 2h 17m
- When
- Every day
- Estimated price
- €50–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport via Barcelona
- Ave. Duration
- 4h 12m
- When
- Monday, Tuesday, Thursday, and Sunday
- Estimated price
- €50–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €40–110
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €55–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport via Barcelona
- Ave. Duration
- 4h 45m
- When
- Friday
- Estimated price
- €30–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- €55–160
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport
- Ave. Duration
- 2h 17m
- When
- Every day
- Estimated price
- €50–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport via Barcelona
- Ave. Duration
- 4h 12m
- When
- Monday, Tuesday, Thursday, and Sunday
- Estimated price
- €50–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €40–110
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €55–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport via Barcelona
- Ave. Duration
- 4h 45m
- When
- Friday
- Estimated price
- €30–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- €55–160
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €50–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport via Palma Mallorca
- Ave. Duration
- 4h 25m
- When
- Tuesday
- Estimated price
- €50–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 25m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €50–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Pisa International Airport
- Ave. Duration
- 2h 10m
- When
- Monday, Wednesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €55–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Pisa International Airport via Palma Mallorca
- Ave. Duration
- 5h 15m
- When
- Monday
- Estimated price
- €55–180
- Website
- ita-airways.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- €40–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport via Palma Mallorca
- Ave. Duration
- 5h
- When
- Saturday
- Estimated price
- €65–170
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- €40–130
- Website
- flyulendo.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 30m
- When
- Every day
- Estimated price
- €29–120
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 2h 11m
- Frequency
- Every 4 hours
- Estimated price
- €15–20
- Website
- https://www.trenitalia.com/en.html
Train from Lyon Part Dieu to Torino Porta Susa
- Ave. Duration
- 3h 57m
- Frequency
- Twice daily
- Estimated price
- €55–140
- Website
- https://www.trenitalia.com/en.html
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 52m
- Frequency
- Hourly
- Estimated price
- €12–25
- Website
- https://www.trenitalia.com/en.html
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 35m
- Frequency
- Twice daily
- Estimated price
- €9–10
- Website
- https://www.trenitalia.com/en.html
Train from Pisa Centrale to Firenze S.M.N.
- Ave. Duration
- 1h 22m
- Frequency
- Every 30 minutes
- Estimated price
- €9–24
- 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
- Once daily
- Estimated price
- €11–22
- Website
- https://www.trenitalia.com/en.html
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 54m
- Frequency
- 3 times a day
- Estimated price
- €9–21
- 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
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Firenze S.M.N. to Perugia
- Ave. Duration
- 1h 31m
- Frequency
- 6 times a week
- Estimated price
- €16–35
- Schedules at
- trenitalia.com
Train from Torino Porta Susa to Perugia
- Ave. Duration
- 4h 40m
- Frequency
- 6 times a week
- Estimated price
- €55–120
- Schedules at
- trenitalia.com
Train from Roma Termini to Foligno
- Ave. Duration
- 1h 42m
- Frequency
- Once daily
- Estimated price
- €24–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–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
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- €35–120
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 926 851
- atencion.cliente@iryo.eu
- Website
- iryo.eu
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 20m
- Frequency
- Hourly
- Estimated price
- €35–95
- Website
- https://iryo.eu/en/home
- Phone
- +34 910 780 990
- Website
- ouigo.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 18m
- Frequency
- Every 4 hours
- Estimated price
- €29–65
- Website
- https://www.ouigo.com/es/en
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- Twice daily
- Estimated price
- €45–65
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Once daily
- Estimated price
- €50–75
- Website
- https://www.renfe.com/es/en
Train from Madrid-Puerta de Atocha-Almudena Grandes to Marseille St Charles
- Ave. Duration
- 8h 40m
- Frequency
- Once daily
- Estimated price
- €90–130
- Website
- https://www.renfe.com/es/en
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Bologna Centrale to Firenze S.M.N.
- Ave. Duration
- 46 min
- Frequency
- Once a week
- Estimated price
- €13–35
- Website
- https://www.italotreno.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 a week
- Estimated price
- €27–70
- Website
- https://www.trenitalia.com/en.html
- 1st Class
- €45–70
- 2nd Class
- €27–40
- Phone
- +34 910 207 007
- alsa@alsa.es
- Website
- alsa.com
Bus from Madrid, Avenida de América to Barcelona, Estació d'Autobusos Nord
- Ave. Duration
- 8h 5m
- Frequency
- Every 3 hours
- Estimated price
- €22–55
- Website
- https://www.alsa.com/en/
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Barcelona - North Bus Station to Florence Villa Constanza Bus Station
- Ave. Duration
- 16h 25m
- Frequency
- Twice daily
- Estimated price
- €60–120
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Florence Villa Constanza Bus Station to Perugia
- Ave. Duration
- 2h 25m
- Frequency
- Every 4 hours
- Estimated price
- €8–13
- Website
- https://www.flixbus.co.uk
Bus from Marseille, Gare de Marseille-Saint-Charles to Florence
- Ave. Duration
- 9h 5m
- Frequency
- Once daily
- Estimated price
- €30–65
- Website
- https://www.flixbus.co.uk
- Phone
- 07001 8282
- booking@union-ivkoni.com
- Website
- union-ivkoni.com
Bus from Madrid Mendez Alvaro Estacion Sur to Milano, Autostazione Lampugnano
- Ave. Duration
- 24h 30m
- Frequency
- 3 times a week
- Estimated price
- €70–100
- Website
- https://union-ivkoni.com/en
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Milano, Autostazione Lampugnano to Perugia Train Station Bus Stop
- Ave. Duration
- 6h 40m
- Frequency
- 6 times a week
- Estimated price
- €13–55
- Website
- https://www.itabus.it/en/home
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
More Questions & Answers
Madrid to Perugia bus services, operated by ALSA, arrive at Barcelona, Estació d'Autobusos Nord station.
Madrid to Perugia train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Perugia is 1791 km. It takes approximately 17h 44m to drive from Madrid to Perugia.
Book your Madrid to Perugia train tickets online with Omio.
Book your Madrid to Perugia bus tickets online with Omio.
There are 1995+ hotels available in Perugia.



















































