There are 5 ways to get from Barcelona Airport to Madrid by train (Renfe, Ouigo), bus, car, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandestrain 6012 / ...
4h 12m€62–179Bus
cheapest- Take the bus from Barcelona, Estació d'Autobusos Nord to Madrid, Avenida de Américabus ALSA - Ba-Z-Ma
9h 43m€56–119Drive 604.3 km
- Drive from Barcelona Airport to Madridcar 604.3 km
6h€96–139Fly
- Fly from Barcelona–El Prat Airport (BCN) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane BCN - MAD
2h 54m€57–159Bus via Teruel
- Take the bus from Barcelona Airport El Prat T1 to Teruelbus
- Take the bus from Teruel to Estación Sur de Autobusesbus 047
12h 24m€58–110
Barcelona Airport to Madrid by subway and train
Questions & Answers
The cheapest way to get from Barcelona Airport to Madrid is to bus which costs €55 - €120 and takes 9h 43m.
The fastest way to get from Barcelona Airport to Madrid is to fly which takes 2h 54m and costs €55 - €160.
No, there is no direct bus from Barcelona Airport to Madrid. However, there are services departing from Aeroport T1 - Arribades and arriving at Madrid, Avenida de América via Gran Via Corts Catalanes and Barcelona, Estació d'Autobusos Nord. The journey, including transfers, takes approximately 9h 43m.
No, there is no direct train from Barcelona Airport to Madrid. However, there are services departing from Aeroport T1 and arriving at Madrid-Puerta de Atocha-Almudena Grandes via El Prat de Llobregat and Barcelona-Sants. The journey, including transfers, takes approximately 4h 12m.
The distance between Barcelona Airport and Madrid is 640 km. The road distance is 604.3 km.
The best way to get from Barcelona Airport to Madrid without a car is to train which takes 4h 12m and costs €60 - €180.
It takes approximately 4h 12m to get from Barcelona Airport to Madrid, including transfers.
Barcelona Airport to Madrid bus services, operated by HIFE S.A., depart from Barcelona Airport El Prat T1 station.
Barcelona Airport to Madrid train services, operated by iryo, depart from Barcelona-Sants station.
The best way to get from Barcelona Airport to Madrid is to train which takes 4h 12m and costs €60 - €180. Alternatively, you can bus, which costs €55 - €120 and takes 9h 43m, you could also fly, which costs €55 - €160 and takes 2h 54m.
What companies run services between Barcelona Airport, Spain and Madrid, Spain?
iryo operates a train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes hourly. Tickets cost €60–130 and the journey takes 3h 31m. Three other operators also service this route. Alternatively, ALSA operates a bus from Barcelona, Estació d'Autobusos Nord to Madrid, Avenida de América every 4 hours. Tickets cost €50–110 and the journey takes 7h 50m.
- Website
- iberia.com
Flights from Barcelona–El Prat Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €45–130
- Website
- aireuropa.com
Flights from Barcelona–El Prat Airport to Adolfo Suárez Madrid–Barajas Airport
- Ave. Duration
- 1h 27m
- When
- Every day
- Estimated price
- €55–140
Flights from Barcelona–El Prat Airport to Adolfo Suárez Madrid–Barajas Airport via Palma Mallorca
- Ave. Duration
- 3h 25m
- When
- Every day
- Estimated price
- €55–140
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Adolfo Suárez Madrid–Barajas Airport via Palma Mallorca
- Ave. Duration
- 3h 25m
- When
- Sunday
- Estimated price
- €29–140
- Phone
- +34 900 926 851
- [email protected]
- Website
- iryo.eu
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 31m
- Frequency
- Hourly
- Estimated price
- €60–130
- Website
- https://iryo.eu/en/home
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 44m
- Frequency
- Every 30 minutes
- Estimated price
- €95–170
- Website
- https://www.renfe.com/es/en
- Phone
- +34 900 759 781
- Website
- ouigo.com
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 28m
- Frequency
- Every 2 hours
- Estimated price
- €55–100
- Website
- https://www.ouigo.com/es/en
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 2m
- Frequency
- 4 times a day
- Estimated price
- €75–120
- Website
- https://www.renfe.com/es/en
- Phone
- +34 910 207 007
- Website
- alsa.com
Bus from Barcelona, Estació d'Autobusos Nord to Madrid, Avenida de América
- Ave. Duration
- 7h 50m
- Frequency
- Every 4 hours
- Estimated price
- €50–110
- Website
- https://www.alsa.com/en/
- Phone
- +34 977 44 03 00
- [email protected]
- Website
- hife.es
Bus from Barcelona Airport El Prat T1 to Teruel
- Ave. Duration
- 7h 9m
- Frequency
- 6 times a week
- Estimated price
- €29–70
- Website
- https://www.hife.es/en
- Phone
- +34 984 689 912
- [email protected]
- Website
- samar.es
Bus from Teruel to Estación Sur de Autobuses
- Ave. Duration
- 4h 15m
- Frequency
- Twice daily
- Estimated price
- €29–45
- Schedules at
- samar.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.
Related travel guides
Train travel in Spain: A guide to Renfe
Read the travel guide
What are the different types of Renfe trains in Spain?
Read the travel guide
More Questions & Answers
Barcelona Airport to Madrid bus services, operated by HIFE S.A., arrive at Teruel station.
Barcelona Airport to Madrid train services, operated by iryo, arrive at Madrid-Puerta de Atocha-Almudena Grandes station.
Yes, the driving distance between Barcelona Airport to Madrid is 604 km. It takes approximately 6h to drive from Barcelona Airport to Madrid.
Book your Barcelona Airport to Madrid bus tickets online with Omio.
There are 6997+ hotels available in Madrid.



























