There are 5 ways to get from Madrid to Barcelona by train (Renfe, Ouigo), bus, rideshare, plane, 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.
- Take the train from Madrid-Puerta De Atocha to Barcelona-SantsAve
bestTrain
2h 30m€21–80- Take the bus from Madrid Mendez Alvaro Estacion Sur to Barcelona Sants Central Bus StationUnion Ivkoni - Unibus 3582
Bus
9h 30m€21–35- Take the rideshare from Madrid to Barcelone615.3 km
Rideshare
7h 13m€30- Fly from Adolfo Suárez Madrid–Barajas Airport (MAD) to Barcelona–El Prat Airport (BCN)MAD - BCN
Fly
3h 16m€27–98- Drive from Madrid to Barcelona620.1 km
Drive 620.1 km
5h 58m€109–157
Madrid to Barcelona by train
Questions & Answers
The cheapest way to get from Madrid to Barcelona is to rideshare which costs €30 and takes 7h 13m.
The fastest way to get from Madrid to Barcelona is to train which takes 2h 30m and costs €21 - €80.
Yes, there is a direct bus departing from Madrid Mendez Alvaro Estacion Sur and arriving at Barcelona Sants Central Bus Station station. Services depart once a week, and operate Saturday. The journey takes approximately 9h 30m.
Yes, there is a direct train departing from Madrid-Puerta De Atocha and arriving at Barcelona-Sants. Services depart every 30 minutes, and operate every day. The journey takes approximately 2h 30m.
The distance between Madrid and Barcelona is 605 km. The road distance is 620.1 km.
The best way to get from Madrid to Barcelona without a car is to train which takes 2h 30m and costs €21 - €80.
The train from Madrid-Puerta De Atocha to Barcelona-Sants takes 2h 30m including transfers and departs every 30 minutes.
Madrid to Barcelona bus services, operated by Union Ivkoni, depart from Madrid Mendez Alvaro Estacion Sur station.
Madrid to Barcelona train services, operated by Renfe AVE, depart from Madrid-Puerta De Atocha station.
The best way to get from Madrid to Barcelona is to train which takes 2h 30m and costs €21 - €80. Alternatively, you can bus, which costs €21 - €35 and takes 9h 30m, you could also fly, which costs €26 - €100 and takes 3h 16m.
What companies run services between Madrid, Spain and Barcelona, Spain?
Renfe AVE operates a train from Madrid-Puerta De Atocha to Barcelona-Sants hourly. Tickets cost €50–75 and the journey takes 2h 30m. Three other operators also service this route. Alternatively, Union Ivkoni operates a bus from Madrid Mendez Alvaro Estacion Sur to Barcelona Sants Central Bus Station once a week. Tickets cost €21–35 and the journey takes 9h 30m.
- Website
- vueling.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €22–160
- Website
- iberia.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 15m
- When
- Every day
- Estimated price
- €22–160
- Website
- aireuropa.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 25m
- When
- Every day
- Estimated price
- €35–180
- Website
- ryanair.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Barcelona–El Prat Airport via Ibiza
- Ave. Duration
- 3h 10m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €30–270
- Website
- rj.com
Flights from Adolfo Suárez Madrid–Barajas Airport to Barcelona–El Prat Airport
- Ave. Duration
- 1h 25m
- When
- Wednesday
- Estimated price
- €65–90
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta De Atocha to Barcelona-Sants
- Ave. Duration
- 2h 30m
- Frequency
- Hourly
- Estimated price
- €50–75
- Website
- https://www.renfe.com/es/en
- Básico
- €50–75
- Phone
- +34 910 150 000
- atencion.cliente@iryo.eu
- Website
- iryo.eu
Train from Madrid-Puerta De Atocha to Barcelona-Sants
- Ave. Duration
- 2h 52m
- Frequency
- Hourly
- Estimated price
- €30–80
- Website
- https://iryo.eu/en/home
- Inicial
- €30–80
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Madrid-Puerta De Atocha to Barcelona-Sants
- Ave. Duration
- 3h 12m
- Frequency
- Every 4 hours
- Estimated price
- €45–70
- Website
- https://www.renfe.com/es/en
- Phone
- +34 910 780 990
- Website
- ouigo.com
Train from Madrid-Puerta De Atocha to Barcelona-Sants
- Ave. Duration
- 3h 2m
- Frequency
- 5 times a day
- Estimated price
- €21–30
- Website
- https://www.ouigo.com/es/en
- Phone
- 07001 8282
- booking@union-ivkoni.com
- Website
- union-ivkoni.com
Bus from Madrid Mendez Alvaro Estacion Sur to Barcelona Sants Central Bus Station
- Ave. Duration
- 9h 30m
- Frequency
- Once a week
- Estimated price
- €21–35
- Website
- http://en.union-ivkoni.com/
Rome2Rio's guide to BlaBlaCar.es
Contact Details
- Website
- blablacar.com
Rideshare from Madrid to Barcelone
- Ave. Duration
- 7h 13m
- Frequency
- Hourly
- Estimated price
- €30
- 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.
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
Is ride-sharing platform BlaBlaCar right for you?
Read the travel guide
More Questions & Answers
Madrid to Barcelona bus services, operated by Union Ivkoni, arrive at Barcelona Sants Central Bus Station.
Madrid to Barcelona train services, operated by Renfe AVE, arrive at Barcelona-Sants station.
Yes, the driving distance between Madrid to Barcelona is 620 km. It takes approximately 5h 58m to drive from Madrid to Barcelona.
Book your Madrid to Barcelona train tickets online with Omio.
Book your Madrid to Barcelona bus tickets online with Omio and Distribusion.
There are 5133+ hotels available in Barcelona. Prices start at €20 per night.
Check out Blablacar's carpooling service for rideshare options between Madrid and Barcelona. A great option if you don't have a driver's licence or want to avoid public transport.