There are 8 ways to get from Madrid to Milan Malpensa Airport (MXP) by plane, train, train (Renfe, Ouigo, Trenitalia), bus, shuttle, train (Renfe, 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 Milano Malpensa Airport
best- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milano Malpensa Airport (MXP)plane MAD - MXP
4h 20m€24–152Fly 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 Cadorna to Malpensa Aeroporto T1train
5h 43m€77–213Train via Barcelona
- 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 Malpensa Aeroporto T1train
16h 23m€198–392Bus
- Take the bus from Madrid to Milanbus FlixBus N1138
- Take the bus from Milan Piazzale Lorenzo Lotto to Milan Malpensa Airport T1bus flibco
24h 20m€143–235Fly to Il Caravaggio International Airport, shuttle
- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Il Caravaggio International Airport (BGY)plane MAD - BGY
- Take a shuttle bus from Orio al Serio Airport to Malpensa Airport - Milan
5h 57m€66–322Train
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Marseille St Charlestrain
- Take the train from Marseille-Saint-Charles to Nice-Villetrain
- Take the train from Ventimiglia to Milano Centraletrain Ic
- Take the train from Milano Centrale to Malpensa Aeroporto T1train
18h 40m€236–421Bus via Marseille
- Take the bus from Estación Sur de Autobuses to Marseille - Saint-Charles Bus Stationbus
- Take the bus from Marseille - Saint-Charles Bus Station to Turin - Vittorio Emanuele Bus Stationbus
- Take the bus from Torino Porta Susa to Malpensa Airport - Milanbus 020
26h 56m€152–258Drive 1,455.5 km
- Drive from Madrid to Milan Malpensa Airport (MXP)car 1,455.5 km
16h 8m€228–329
Madrid to Milan Malpensa Airport (MXP) by train
Questions & Answers
The cheapest way to get from Madrid to Milan Malpensa Airport (MXP) is to fly which costs €23 - €160 and takes 4h 20m.
The fastest way to get from Madrid to Milan Malpensa Airport (MXP) is to fly which takes 4h 20m and costs €23 - €160.
No, there is no direct bus from Madrid to Milan Malpensa Airport (MXP). However, there are services departing from Madrid and arriving at Milan Malpensa Airport T1 via Milan Piazzale Lorenzo Lotto. The journey, including transfers, takes approximately 24h 20m.
No, there is no direct train from Madrid to Milan Malpensa Airport (MXP). However, there are services departing from Madrid-Puerta de Atocha-Almudena Grandes and arriving at Malpensa Aeroporto T1 via Barcelona-Sants, Lyon Part Dieu and Milano Centrale. The journey, including transfers, takes approximately 16h 23m.
The distance between Madrid and Milan Malpensa Airport (MXP) is 1159 km. The road distance is 1455.5 km.
The best way to get from Madrid to Milan Malpensa Airport (MXP) without a car is to train via Barcelona which takes 16h 23m and costs €190 - €400.
It takes approximately 4h 20m to get from Madrid to Milan Malpensa Airport (MXP), including transfers.
Madrid to Milan Malpensa Airport (MXP) bus services, operated by FlixBus, depart from Madrid station.
Madrid to Milan Malpensa Airport (MXP) train services, operated by Renfe AVE, depart from Madrid-Puerta de Atocha-Almudena Grandes station.
The best way to get from Madrid to Milan Malpensa Airport (MXP) is to fly which takes 4h 20m and costs €23 - €160. Alternatively, you can train via Barcelona, which costs €190 - €400 and takes 16h 23m, you could also bus, which costs €140 - €240 and takes 24h 20m.
What companies run services between Madrid, Spain and Milan Malpensa Airport (MXP), Italy?
Ulendo Airlink, Ryanair, and two other airlines fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Milano Malpensa Airport (MXP) every 3 hours. Alternatively, you can take a train from Madrid-Puerta de Atocha-Almudena Grandes to Malpensa Aeroporto T1 via Barcelona-Sants, Lyon Part Dieu, and Milano Centrale in around 16h 23m.
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 9m
- When
- Every day
- Estimated price
- €23–160
Flights from Adolfo Suárez Madrid–Barajas Airport to Il Caravaggio International Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €45–200
Flights from Adolfo Suárez Madrid–Barajas Airport to Il Caravaggio International Airport via Ibiza
- Ave. Duration
- 4h 36m
- When
- Every day
- Estimated price
- €45–200
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 11m
- When
- Every day
- Estimated price
- €65–140
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport
- Ave. Duration
- 2h 10m
- When
- Every day
- Estimated price
- €65–160
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 5m
- When
- Every day
- Estimated price
- €60–180
- Website
- flyulendo.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milano Malpensa Airport
- Ave. Duration
- 2h 15m
- When
- Every day
- Estimated price
- €22–120
- Website
- ita-airways.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Milan Linate Airport via Palma Mallorca
- Ave. Duration
- 4h 22m
- When
- Thursday and Sunday
- Estimated price
- €90–200
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Milano Cadorna to Malpensa Aeroporto T1
- Ave. Duration
- 38 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Centrale to Malpensa Aeroporto T1
- Ave. Duration
- 53 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Centrale to Malpensa Aeroporto T1
- Ave. Duration
- 53 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- +34 91 232 03 20
- Website
- Renfe AVE
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 22m
- Frequency
- Every 30 minutes
- Estimated price
- €95–170
- Website
- Renfe AVE
- Phone
- +34 900 926 851
- [email protected]
- Website
- Iryo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 24m
- Frequency
- Hourly
- Estimated price
- €60–130
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 23m
- Frequency
- Every 2 hours
- Estimated price
- €55–100
- Website
- Ouigo
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Barcelona-Sants
- Ave. Duration
- 3h 29m
- Frequency
- 4 times a day
- Estimated price
- €80–120
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Lyon Part Dieu
- Ave. Duration
- 5h 6m
- Frequency
- Twice daily
- Estimated price
- €80–130
- Website
- Renfe Viajeros
Train from Madrid-Puerta de Atocha-Almudena Grandes to Marseille St Charles
- Ave. Duration
- 8h 42m
- Frequency
- Twice daily
- Estimated price
- €140–230
- Website
- Renfe Viajeros
- Phone
- +39.06.5210550
- Website
- Trenitalia
Train from Lyon Part Dieu to Milano Centrale
- Ave. Duration
- 4h 44m
- Frequency
- 4 times a day
- Estimated price
- €55–90
- Website
- Trenitalia
Train from Ventimiglia to Milano Centrale
- Ave. Duration
- 4h 30m
- Frequency
- Twice daily
- Estimated price
- €35–60
- Website
- Trenitalia
- Phone
- +33 4 13 94 30 50
- Website
- Zou! Lignes Express Régionales
Train from Marseille-Saint-Charles to Nice-Ville
- Ave. Duration
- 2h 41m
- Frequency
- Hourly
- Estimated price
- €55–110
- Website
- Zou! Lignes Express Régionales
- Phone
- +33 1 84 94 36 35
- Website
- TGV inOui
Train from Marseille-Saint-Charles to Nice-Ville
- Ave. Duration
- 2h 36m
- Frequency
- Every 2 hours
- Estimated price
- €45–75
- Website
- TGV inOui
- Phone
- +39 06 68475475
- Website
- Trenitalia Intercity
Train from Ventimiglia to Milano Centrale
- Ave. Duration
- 3h 50m
- Frequency
- Hourly
- Estimated price
- €30–65
- Website
- Trenitalia Intercity
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Madrid to Milan
- Ave. Duration
- 23h 5m
- Frequency
- Once daily
- Estimated price
- €130–220
- Website
- Flixbus
- [email protected]
- Website
- Flibco
Bus from Milan Piazzale Lorenzo Lotto to Milan Malpensa Airport T1
- Ave. Duration
- 50 min
- Frequency
- Every 30 minutes
- Estimated price
- €9–19
- Website
- Flibco
- Phone
- +39 02 3008 9000
- [email protected]
- Website
- Autostradale
Bus from Milan Piazzale Lorenzo Lotto to Milan Malpensa Airport T1
- Ave. Duration
- 50 min
- Frequency
- Every 4 hours
- Estimated price
- €10–16
- Website
- Autostradale
- Phone
- +39 0471 305604
- [email protected]
- Website
- Alto Adige Bus
Shuttle from Orio al Serio Airport to Malpensa Airport - Milan
- Ave. Duration
- 1h 21m
- Frequency
- On demand
- Estimated price
- €85–120
- Website
- Alto Adige Bus
- Phone
- 035.319366
- [email protected]
- Website
- orioshuttle.com
Shuttle from Orio al Serio Airport to Malpensa Airport - Milan
- Ave. Duration
- 1h 55m
- Frequency
- Every 4 hours
- Estimated price
- €20
- Schedules at
- orioshuttle.com
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Estación Sur de Autobuses to Marseille - Saint-Charles Bus Station
- Ave. Duration
- 15h 20m
- Frequency
- Once daily
- Estimated price
- €100–180
- Website
- BlaBlaCar Bus
Bus from Marseille - Saint-Charles Bus Station to Turin - Vittorio Emanuele Bus Station
- Ave. Duration
- 7h 30m
- Frequency
- Once daily
- Estimated price
- €30–60
- Website
- BlaBlaCar Bus
- Phone
- 035 289000
- Website
- Arriva Italia - Torino
Bus from Torino Porta Susa to Malpensa Airport - Milan
- Ave. Duration
- 1h 55m
- Frequency
- Hourly
- Estimated price
- €22
- Website
- Arriva Italia - Torino
- 2nd Class
- €22
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 Milan Malpensa Airport (MXP) bus services, operated by FlixBus, arrive at Milan station.
Madrid to Milan Malpensa Airport (MXP) train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Milan Malpensa Airport (MXP) is 1456 km. It takes approximately 16h 8m to drive from Madrid to Milan Malpensa Airport (MXP).
Book your Madrid to Milan Malpensa Airport (MXP) train tickets online with Omio.
Book your Madrid to Milan Malpensa Airport (MXP) bus tickets online with Omio.
There are 651+ hotels available in Milan Malpensa Airport (MXP).




























































