There are 5 ways to get from Badajoz to Madrid by plane, train, bus, rideshare 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.

Recommended option

Fly  •  2h 14m

  1. Fly from Badajoz (BJZ) to Madrid (MAD) BJZ - MAD

67€ - 211€

Cheapest option

Rideshare  •  4h 23m

  1. Take the rideshare from Badajoz to Madrid 397.4 km

16€ - 25€

3 alternative options

Train  •  5h 4m

  1. Take the train from Badajoz to Madrid-Atocha Cercanias 17199 / ...

29€ - 40€

Bus  •  5h 45m

  1. Take the bus from Badajoz to Madrid Auto Res / ...

20€ - 50€

Drive  •  3h 48m

  1. Drive from Badajoz to Madrid 397.8 km

40€ - 65€

Questions & Answers

There is widespread community transmission globally.
Some travel restrictions are being lifted in Spain. For the latest travel status, please check the official page for Spain.

Learn More.

The cheapest way to get from Badajoz to Madrid is to rideshare which costs 16€ - 25€ and takes 4h 23m.

More details

The quickest way to get from Badajoz to Madrid is to fly which costs 65€ - 220€ and takes 2h 14m.

More details

Yes, there is a direct bus departing from Badajoz and arriving at Madrid. Services depart once daily, and operate every day. The journey takes approximately 5h 45m.

More details

Yes, there is a direct train departing from Badajoz and arriving at Madrid-Atocha Cercanias. Services depart twice daily, and operate every day. The journey takes approximately 5h 4m.

More details

The distance between Badajoz and Madrid is 328 km. The road distance is 397.8 km.

Get driving directions

The best way to get from Badajoz to Madrid without a car is to train which takes 5h 4m and costs 29€ - 40€.

More details

It takes approximately 2h 14m to get from Badajoz to Madrid, including transfers.

More details

Badajoz to Madrid bus services, operated by Avanza Grupo, depart from Badajoz station.

More details

Badajoz to Madrid train services, operated by Renfe Viajeros, depart from Badajoz station.

More details

Map of how to get from Badajoz to Madrid.
Launch map view
  • Distance: 327.9 km
  • Duration: 2h 14m

What companies run services between Badajoz, Spain and Madrid, Spain?

Iberia flies from Badajoz to Madrid twice daily. Alternatively, Renfe Viajeros operates a train from Badajoz to Madrid-Atocha Cercanias twice daily. Tickets cost 29€ - 40€ and the journey takes 5h 4m.

Airlines
Iberia
Website
iberia.com
Flights from Badajoz to Madrid
Ave. Duration
1h 15m
When
Monday, Tuesday, Wednesday, Thursday, Friday and Sunday
Estimated price
50€ - 300€
Train operators
Renfe Viajeros

Spain's excellent and extensive rail system connects cities across Spain and into neighbouring countries. Renfe's high-speed AVE trains can reach speeds of up to 350km/h, making travel between major cities very efficient. All medium- and long-distance trains require a seat reservation; ticket sales for these trains usually open 30-60 days before travel. Most Renfe trains have two classes: Turista (2nd class) and Preferente (1st class), although some AVE trains offer Turista Plus. There is free WiFi for Preferente passengers and for those with a +Renfe loyalty card.

Rome2rio's guide to Renfe Viajeros
Contact Details
Phone
902 320 320
Website
renfe.com
Train from Badajoz to Madrid-Atocha Cercanias
Ave. Duration
5h 4m
Frequency
Twice daily
Estimated price
29€ - 40€
Website
Renfe Viajeros
Bus operators
FlixBus

One of Europe’s leading bus companies, Flixbus serves 2000+ destinations in 29 countries, including Germany, France, Italy, Austria, the Netherlands and Croatia and into Scandinavia and eastern Europe, as well as some US cities. Coaches have toilets, free WiFi and power outlets, plus snacks and drinks for purchase on board. Flixbus is a good choice for the budget-conscious traveller; purchase tickets in advance for the cheapest fares (note: there is no option to reserve a seat in advance).

Rome2rio's guide to FlixBus
Contact Details
Phone
+49 1807 123 99 123
Email
info@flixbus.de
Website
flixbus.de
Bus from Badajoz to Madrid, Madrid
Ave. Duration
5h 50m
Frequency
Once daily
Estimated price
20€ - 25€
Website
flixbus.co.uk
ALSA

A Spanish subsidiary of National Express, ALSA provides bus and coach services across Spain and neighbouring countries including Portugal, France, Germany, the Netherlands, Italy, Poland and Malta. Founded in 1923, ALSA values service and the customer experience. Buses are equipped with communal TV screens showing movies, individual behind-seat screens, ALSA radio, app for books and music, and free WiFi. ALSA services are accessible to people with disabilities, and guide dogs are welcome on all journeys. There are three types of tickets on offer (Frequent Traveller Pass, Share Pass and ALSA Pass), along with discounts for senior citizens, students and children.

Contact Details
Phone
+34 902 42 22 42
Website
alsa.es
Bus from Badajoz to Madrid - South Station
Ave. Duration
5h 15m
Frequency
Once daily
Estimated price
30€ - 45€
Website
alsa.com
Other operators
BlaBlaCar.es
Rome2rio's guide to BlaBlaCar.es
Contact Details
Website
blablacar.com
Rideshare from Badajoz to Madrid
Ave. Duration
4h 23m
Frequency
Every 2 hours
Estimated price
16€ - 25€
Book at
blablacar.es

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.

More Questions & Answers

The best way to get from Badajoz to Madrid is to fly which takes 2h 14m and costs 65€ - 220€. Alternatively, you can train, which costs 29€ - 40€ and takes 5h 4m, you could also bus, which costs 20€ - 50€ and takes 5h 45m.

Mode details

The quickest flight from Badajoz Airport to Madrid Airport is the direct flight which takes 1h 15m.

Search flights

Badajoz to Madrid bus services, operated by Avanza Grupo, arrive at Madrid station.

More details

Badajoz to Madrid train services, operated by Renfe Viajeros, arrive at Madrid-Atocha Cercanias station.

More details

Yes, the driving distance between Badajoz to Madrid is 398 km. It takes approximately 3h 48m to drive from Badajoz to Madrid.

Get driving directions

Iberia offers flights from Badajoz Airport to Madrid Airport.

Search flights

Book your Badajoz to Madrid train tickets online with Omio.

Search and book

Book your Badajoz to Madrid bus tickets online with Omio, Busbud and FlixBus.

Search and book

There are 4933+ hotels available in Madrid. Prices start at 87€ per night.

More details

Check out Blablacar's carpooling service for rideshare options between Badajoz and Madrid. A great option if you don't have a driver's licence or want to avoid public transport.

Read Rome2rio's guide to Blablacar

The best way to get from Badajoz to Badajoz Airport is to taxi which takes 16 min and costs 17€ - 21€.

More details