There are 13 ways to get from Madrid to Italy by plane, train (Renfe, Ouigo, Trenitalia), train, ferry, bus, train (Renfe, Ouigo, TGV, Trenitalia), 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 Milan Linate Airport
best- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milan Linate Airport (LIN)plane MAD - LIN
4h 38m€64–196Fly to Milano Malpensa Airport, train
cheapest- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milano Malpensa Airport (MXP)plane MAD - MXP
- Take the train from Malpensa Aeroporto T1 to Milano Cadornatrain
5h 21m€34–149Train
- 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 Milano Centraletrain Fr
- Take the train from Milano Centrale to Roma Terminitrain Fr / ...
17h 48m€174–445Train, ferry
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the ferry from Port de Barcelona to Port of Civitavecchiaferry
- Take the train from Civitavecchia to Roma Terminitrain Re
27h 4m€92–263Bus
- Take the bus from Madrid to Genoabus FlixBus N1138
- Take the bus from Genoa to Roma, Autostazione Tiburtinabus 510 / ...
28h 23m€82–170Fly to Florence Peretola Airport
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Florence Peretola Airport (FLR)plane MAD - FLR
4h 50m€55–165Fly to Bologna Guglielmo Marconi Airport
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Bologna Guglielmo Marconi Airport (BLQ)plane MAD - BLQ
4h 47m€53–163Fly to Naples Airport
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Naples Airport (NAP)plane MAD - NAP
5h 7m€59–188Fly to Fiumicino International Airport
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Fiumicino International Airport (FCO)plane MAD - FCO
5h 22m€46–161Fly to Turin Caselle Airport
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Turin Caselle Airport (TRN)plane MAD - TRN
5h 24m€63–199Train via Saint-Marcel-lès-Valence
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Santstrain Ave
- Take the train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sudtrain Tgv
- Take the train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eauxtrain Ter
- Take the train from Chambery Challes Les Eaux to Milano Centraletrain Fr
- Take the train from Milano Centrale to Roma Terminitrain Fr / ...
18h 25m€194–550Bus via Barcelona
- Take the bus from Madrid, Avenida de América to Barcelona, Estació d'Autobusos Nordbus Alsa
- Take the bus from Barcelona - North Bus Station to Roma, Autostazione Tiburtinabus BlaBlaCar Bus
29h 28m€120–212Drive 1,911.9 km
- Drive from Madrid to Romecar 1,911.9 km
18h 46m€293–423
Madrid to Italy by train
Questions & Answers
The cheapest way to get from Madrid to Italy is to fly and train which costs €30 - €150 and takes 5h 21m.
The fastest way to get from Madrid to Italy is to fly which takes 4h 38m and costs €60 - €200.
No, there is no direct bus from Madrid to Italy. However, there are services departing from Madrid and arriving at Termini via Genoa and Roma, Autostazione Tiburtina. The journey, including transfers, takes approximately 28h 23m.
No, there is no direct train from Madrid to Italy. However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Roma Termini via Barcelona-Sants, Lyon Part Dieu and Milano Centrale. The journey, including transfers, takes approximately 17h 48m.
The distance between Madrid and Italy is 1199 km. The road distance is 1911.9 km.
The best way to get from Madrid to Italy without a car is to train which takes 17h 48m and costs €170 - €450.
It takes approximately 4h 38m to get from Madrid to Italy, including transfers.
Madrid to Italy bus services, operated by FlixBus, depart from Madrid station.
Madrid to Italy train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Italy is to fly which takes 4h 38m and costs €60 - €200. Alternatively, you can train, which costs €170 - €450 and takes 17h 48m, you could also bus, which costs €80 - €170 and takes 28h 23m.
What companies run services between Madrid, Spain and Italy?
Iberia, Air Europa, and ITA Airways fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milan Linate Airport (LIN) 4 times a day. Alternatively, you can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Roma Termini via Barcelona-Sants, Lyon Part Dieu, and Milano Centrale in around 17h 48m.
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- €55–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport
- Ave. Duration
- 2h 17m
- When
- Every day
- Estimated price
- €45–150
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
- €45–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €55–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport via Barcelona
- Ave. Duration
- 4h 45m
- When
- Friday
- Estimated price
- €90–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Naples Airport
- Ave. Duration
- 2h 32m
- When
- Every day
- Estimated price
- €50–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Naples Airport via Barcelona
- Ave. Duration
- 5h 17m
- When
- Every day
- Estimated price
- €35–160
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 Milano Malpensa Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €30–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- €60–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport via Barcelona
- Ave. Duration
- 3h 55m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €100–200
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- €55–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Florence Peretola Airport
- Ave. Duration
- 2h 17m
- When
- Every day
- Estimated price
- €45–150
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
- €45–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €55–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport via Barcelona
- Ave. Duration
- 4h 45m
- When
- Friday
- Estimated price
- €90–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Naples Airport
- Ave. Duration
- 2h 32m
- When
- Every day
- Estimated price
- €50–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Naples Airport via Barcelona
- Ave. Duration
- 5h 17m
- When
- Every day
- Estimated price
- €35–160
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 Fiumicino International Airport via Ibiza
- Ave. Duration
- 5h 10m
- When
- Monday
- Estimated price
- €110–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €30–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- €60–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport via Barcelona
- Ave. Duration
- 3h 55m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €100–200
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Bologna Guglielmo Marconi Airport
- Ave. Duration
- 2h 25m
- When
- Monday, Tuesday, Thursday, Friday, and Sunday
- Estimated price
- €50–150
Flights from Adolfo Suárez Madrid–Barajas Airport to Naples Airport
- Ave. Duration
- 2h 35m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €55–170
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 35m
- When
- Every day
- Estimated price
- €55–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport via Palma Mallorca
- Ave. Duration
- 4h 25m
- When
- Tuesday
- Estimated price
- €55–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €28–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Turin Caselle Airport
- Ave. Duration
- 2h 10m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €50–200
- Website
- ita-airways.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport via Palma Mallorca
- Ave. Duration
- 5h
- When
- Saturday
- Estimated price
- €60–180
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- €35–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport via Valencia
- Ave. Duration
- 4h 5m
- When
- Monday, Tuesday, Friday, and Sunday
- Estimated price
- €35–110
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport
- Ave. Duration
- 2h 26m
- When
- Every day
- Estimated price
- €35–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- €55–190
- 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–130
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 15m
- When
- Monday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €23–110
- Website
- volotea.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Fiumicino International Airport via Olbia
- Ave. Duration
- 4h 10m
- When
- Friday
- Estimated price
- €60–240
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 2h 37m
- Frequency
- Hourly
- Estimated price
- €35–130
- 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
- 2h 57m
- Frequency
- Hourly
- Estimated price
- €35–100
- 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 2m
- 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 4m
- 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 Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 29m
- Frequency
- Once daily
- Estimated price
- €45–60
- Website
- https://www.renfe.com/es/en
- Phone
- +39.06.5210550
- Website
- trenitalia.com
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- Twice daily
- Estimated price
- €50–130
- Website
- https://www.trenitalia.com/en.html
Train from Civitavecchia to Roma Termini
- Ave. Duration
- 1h 20m
- Frequency
- Hourly
- Estimated price
- €4–16
- Website
- https://www.trenitalia.com/en.html
Train from Chambery Challes Les Eaux to Milano Centrale
- Ave. Duration
- 3h 21m
- Frequency
- Twice daily
- Estimated price
- €55–140
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Milano Centrale to Roma Termini
- Ave. Duration
- 3h 12m
- Frequency
- Every 30 minutes
- Estimated price
- €45–110
- Schedules at
- trenitalia.com
Train from Civitavecchia to Roma Termini
- Ave. Duration
- 48 min
- Frequency
- 5 times a day
- Estimated price
- €14–19
- Schedules at
- trenitalia.com
- Phone
- +39 06 8937 1892
- Website
- italotreno.it
Train from Milano Centrale to Roma Termini
- Ave. Duration
- 3h 39m
- Frequency
- Hourly
- Estimated price
- €45–100
- Website
- https://www.italotreno.it/en
- Phone
- +39 06 68475475
- Website
- trenitalia.com
Train from Civitavecchia to Roma Termini
- Ave. Duration
- 1h 7m
- Frequency
- Twice daily
- Estimated price
- €12
- Website
- https://www.trenitalia.com/en.html
- Phone
- +39 02 7249 4494
- my-link@trenord.it
- Website
- trenord.it
Train from Malpensa Aeroporto T1 to Milano Cadorna
- Ave. Duration
- 39 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- https://www.trenord.it/en/
- Phone
- +33 1 84 94 36 35
- Website
- sncf-connect.com
Train from Barcelona-Sants to Valence Tgv Rhone-Alpes Sud
- Ave. Duration
- 4h 24m
- Frequency
- Twice daily
- Estimated price
- €35–110
- Website
- https://www.sncf-connect.com/en-en
- Phone
- +33 1 84 94 36 35
- Website
- track.effiliation.com
Train from Valence Tgv Rhone-Alpes Sud to Chambery Challes Les Eaux
- Ave. Duration
- 1h 53m
- Frequency
- Hourly
- Estimated price
- €30–60
- Website
- https://track.effiliation.com/servlet/effi.redir?id_compteur=23007591&url=https%3A%2F%2Fwww.sncf-connect.com%2Fen-en%2F
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- flixbus.fr
Bus from Madrid to Genoa
- Ave. Duration
- 21h
- Frequency
- Once daily
- Estimated price
- €65–140
- Website
- https://www.flixbus.co.uk
Bus from Genoa to Roma, Autostazione Tiburtina
- Ave. Duration
- 6h
- Frequency
- Every 3 hours
- Estimated price
- €14–30
- Website
- https://www.flixbus.co.uk
- Phone
- +39 06 88 93 82 32
- Website
- itabus.it
Bus from Genoa to Roma, Autostazione Tiburtina
- Ave. Duration
- 7h 45m
- Frequency
- 3 times a week
- Estimated price
- €14–28
- Website
- https://www.itabus.it/en/home
- 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
- €24–55
- Website
- https://www.alsa.com/en/
- Phone
- +3-389-268-0068
- Website
- blablacar.co.uk
Bus from Barcelona - North Bus Station to Roma, Autostazione Tiburtina
- Ave. Duration
- 20h
- Frequency
- Twice daily
- Estimated price
- €95–150
- Website
- https://www.blablacar.co.uk/bus
- Phone
- +39.081.496.444
- info@grimaldi.napoli.it
- Website
- grimaldi-lines.com
Ferry from Port de Barcelona to Port of Civitavecchia
- Ave. Duration
- 20h
- Frequency
- 5 times a week
- Estimated price
- €55–110
- Website
- https://www.grimaldi-lines.com/en/
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
Getting to Milan from the airport
Read the travel guide
5 delightfully under-the-radar French towns you need to visit
Read the travel guide
More Questions & Answers
Madrid to Italy bus services, operated by FlixBus, arrive at Genoa station.
Madrid to Italy train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Italy is 1912 km. It takes approximately 18h 46m to drive from Madrid to Italy.
Book your Madrid to Italy train tickets online with Omio.
There are 21433+ hotels available in Italy.

































































