There are 4 ways to get from Barcelona to Madrid (Station) 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 Ave
3h 49m€59–164Bus
cheapest- Take the bus from Barcelona, Estació d'Autobusos Nord to Madrid, Avenida de Américabus ALSA - Ba-Z-Ma
8h 1m€50–75Drive 606 km
- Drive from Barcelona to Madrid (Station)car 606 km
6h 2m€96–139Fly
- Fly from Barcelona–El Prat Airport (BCN) to Adolfo Suárez Madrid–Barajas Airport (MAD)plane BCN - MAD
3h 31m€54–150
Barcelona to Madrid (Station) by train, bus, and foot
Questions & Answers
The cheapest way to get from Barcelona to Madrid (Station) is to bus which costs €50 - €75 and takes 8h 1m.
The fastest way to get from Barcelona to Madrid (Station) is to fly which takes 3h 31m and costs €50 - €150.
Yes, there is a direct bus departing from Barcelona, Estació d'Autobusos Nord and arriving at Madrid, Avenida de América. Services depart every three hours, and operate every day. The journey takes approximately 7h 50m.
No, there is no direct train from Barcelona to Madrid (Station). However, there are services departing from Barcelona-Sants and arriving at Madrid-Puerta de Atocha-Almudena Grandes via . The journey, including transfers, takes approximately 3h 49m.
The distance between Barcelona and Madrid (Station) is 613 km. The road distance is 606 km.
The best way to get from Barcelona to Madrid (Station) without a car is to train which takes 3h 49m and costs €55 - €170.
It takes approximately 3h 49m to get from Barcelona to Madrid (Station), including transfers.
Barcelona to Madrid (Station) bus services, operated by ALSA, depart from Barcelona, Estació d'Autobusos Nord station.
Barcelona to Madrid (Station) train services, operated by Renfe AVE, depart from Barcelona-Sants station.
The best way to get from Barcelona to Madrid (Station) is to train which takes 3h 49m and costs €55 - €170. Alternatively, you can bus, which costs €50 - €75 and takes 8h 1m, you could also fly, which costs €50 - €150 and takes 3h 31m.
What companies run services between Barcelona, Spain and Madrid (Station), Madrid, Spain?
Renfe AVE operates a train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes every 30 minutes. Tickets cost €90–170 and the journey takes 3h 2m. 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 3 hours. Tickets cost €50–75 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
- €50–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
- €50–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
- €30–140
- 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
- Every 30 minutes
- Estimated price
- €90–170
- Website
- https://www.renfe.com/es/en
- 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–120
- Website
- https://iryo.eu/en/home
- 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–95
- 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 3 hours
- Estimated price
- €50–75
- Website
- https://www.alsa.com/en/
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 to Madrid (Station) bus services, operated by ALSA, arrive at Madrid, Avenida de América station.
Barcelona to Madrid (Station) train services, operated by Renfe AVE, arrive at Madrid-Puerta de Atocha-Almudena Grandes station.
Yes, the driving distance between Barcelona to Madrid (Station) is 606 km. It takes approximately 6h 2m to drive from Barcelona to Madrid (Station).
Book your Barcelona to Madrid (Station) bus tickets online with Omio.
There are 7040+ hotels available in Madrid (Station).















