There are 11 ways to get from Milan to Badajoz by train, plane, train (Trenitalia, Renfe, TGV, Ouigo), 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.
Train to Milano Malpensa Airport, fly to Badajoz Airport
best- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Badajoz Airport (BJZ)plane MXP - BJZ
8h 38m€86–437Train to Milano Malpensa Airport, fly to Seville Airport, bus
cheapest- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Seville Airport (SVQ)plane MXP - SVQ
- Take the bus from Sevilla Airport to Badajozbus
10h 18m€45–204Train
- Take the train from Milano Centrale to Lyon Part Dieutrain Fr
- Take the train from Lyon Part Dieu to Barcelona-Santstrain
- Take the train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandestrain Ave
- Take the train from Madrid-Puerta de Atocha-Almudena Grandes to Badajoztrain Alv
19h 13m€238–507Bus
- Take the bus from Milan to Badajozbus FlixBus N1138
29h 55m€162–262Drive 1,873.1 km
- Drive from Milan to Badajozcar 1,873.1 km
19h 49m€306–441Fly Milan Linate Airport to Badajoz Airport
- Fly from Milan Linate Airport (LIN) to Badajoz Airport (BJZ)plane LIN - BJZ
8h 21m€144–654Fly Milan Linate Airport to Lisbon-Portela Airport, bus
- Fly from Milan Linate Airport (LIN) to Lisbon-Portela Airport (LIS)plane LIN - LIS
- Take the bus from Estação Rodoviária de Lisboa Oriente to Badajozbus
9h 20m€78–370Train to Milano Malpensa Airport, fly to Lisbon-Portela Airport, bus
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Lisbon-Portela Airport (LIS)plane MXP - LIS
- Take the bus from Estação Rodoviária de Lisboa Oriente to Badajozbus
9h 47m€70–293Fly Milan Linate Airport to Adolfo Suárez Madrid–Barajas Airport, train
- Fly from Milan Linate Airport (LIN) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane LIN - MAD
- Take the train from Madrid Chamartín to Badajoztrain
10h 54m€128–299Train to Milano Malpensa Airport, fly to Adolfo Suárez Madrid–Barajas Airport, train
- Take the train from Milano Porta Garibaldi to Malpensa Aeroporto T1train
- Fly from Milano Malpensa Airport (MXP) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane MXP - MAD
- Take the train from Madrid Chamartín to Badajoztrain
11h 16m€83–262Bus via Marseille
- Take the bus from Milano, Autostazione Lampugnano to Marseille - Saint-Charles Bus Stationbus BlaBlaCar Bus
- Take the bus from Marseille - Saint-Charles Bus Station to Badajozbus BlaBlaCar Bus
31h 9m€144–234
Milan to Badajoz by train
Comparing Your Travel Options
The cheapest way to get from Milan to Badajoz is to train and fly and bus which costs €45 - €210 and takes 10h 18m.
The fastest way to get from Milan to Badajoz is to fly which takes 8h 21m and costs €140 - €700.
No, there is no direct bus from Milan to Badajoz. However, there are services departing from Milan and arriving at Badajoz via . The journey, including transfers, takes approximately 29h 55m.
No, there is no direct train from Milan to Badajoz. However, there are services departing from Milano Centrale and arriving at Badajoz via Lyon Part Dieu, Barcelona-Sants and Madrid-Puerta de Atocha-Almudena Grandes. The journey, including transfers, takes approximately 19h 13m.
The distance between Milan and Badajoz is 1546 km. The road distance is 1873.1 km.
The best way to get from Milan to Badajoz without a car is to train which takes 19h 13m and costs €230 - €550.
It takes approximately 8h 38m to get from Milan to Badajoz, including transfers.
Milan to Badajoz bus services, operated by FlixBus, depart from Milan station.
Milan to Badajoz train services, operated by Trenitalia, depart from Milano Centrale station.
The best way to get from Milan to Badajoz is to train which takes 19h 13m and costs €230 - €550. Alternatively, you can bus, which costs €160 - €270 and takes 29h 55m, you could also fly, which costs €140 - €700 and takes 8h 21m.
What companies run services between Milan, Italy and Badajoz, Spain?
You can take a train from Milano Centrale to Badajoz via Lyon Part Dieu, Barcelona-Sants, and Madrid-Puerta de Atocha-Almudena Grandes in around 19h 13m. Alternatively, FlixBus operates a bus from Milan to Badajoz once daily. Tickets cost €160–260 and the journey takes 28h 40m.
- Website
- iberia.com
Flights from Milano Malpensa Airport to Badajoz Airport via Barcelona
- Ave. Duration
- 4h 30m
- When
- Monday and Wednesday
- Estimated price
- €120–550
Flights from Milano Malpensa Airport to Badajoz Airport via Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 5h 32m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €80–550
Flights from Milan Linate Airport to Badajoz Airport via Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 7h
- When
- Sunday, Monday, Tuesday, Wednesday, Thursday, and Friday
- Estimated price
- €140–650
Flights from Milan Linate Airport to Lisbon-Portela Airport via Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 5h 11m
- When
- Every day
- Estimated price
- €80–410
Flights from Milano Malpensa Airport to Lisbon-Portela Airport via Barcelona
- Ave. Duration
- 4h 47m
- When
- Wednesday, Thursday, Friday, Saturday, Sunday, and Monday
- Estimated price
- €50–210
Flights from Milan Linate Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 20m
- When
- Every day
- Estimated price
- €60–170
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 2h 25m
- When
- Every day
- Estimated price
- €65–150
Flights from Milano Malpensa Airport to Adolfo Suárez Madrid–Barajas Airport via Barcelona
- Ave. Duration
- 4h 10m
- When
- Monday, Tuesday, Thursday, and Friday
- Estimated price
- €40–200
- Phone
- +39 02 7249 4494
- [email protected]
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
Train from Milano Porta Garibaldi to Malpensa Aeroporto T1
- Ave. Duration
- 43 min
- Frequency
- Every 30 minutes
- Estimated price
- €4–6
- Website
- Trenord
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Milan to Badajoz
- Ave. Duration
- 28h 40m
- Frequency
- Once daily
- Estimated price
- €160–260
- Website
- Flixbus
Want to know more about travelling around Spain
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 delightfully under-the-radar French towns you need to visit
Read the travel guide
Train travel in Spain: A guide to Renfe
Read the travel guide
Booking & Getting There
Milan to Badajoz bus services, operated by FlixBus, arrive at Badajoz station.
Milan to Badajoz train services, operated by Trenitalia, arrive at Lyon Part Dieu station.
Yes, the driving distance between Milan to Badajoz is 1873 km. It takes approximately 19h 49m to drive from Milan to Badajoz.
Book your Milan to Badajoz train tickets online with Omio.
Book your Milan to Badajoz bus tickets online with Omio.
There are 137+ hotels available in Badajoz.









