Barcelona to Madrid: Transport Guide

Last updated:

 After a relaxing trip to Barcelona, Marid is an excellent destination to visit next in Spain.

In this travel guide, you’ll find useful information about traveling from Barcelona to Madrid by flight, train, and bus, including timetable, ticket prices, and tips.

 

How to get from Barcelona to Madrid?

The distance between Barcelona and Madrid is about 314 miles (506 km), and you can get to Madrid by flight, train, bus, and car. While it takes less than 1.5 hours flying, traveling by train takes 2.5 hours and by bus takes at least 7 and a half hours.

TypeTimeCostTickets
Flight1 hour 25 minutesFrom €37Check flight ticket
Train2 hours 30 minutesFrom €54Check train ticket
Bus7.5 hoursFrom €42Check bus ticket
Car2 hours 35 minutesFrom €80 for 3 days rentalCheck your car options

Travel tips

  • Things to do: Museo Nacional del Prado, Royal Palace of Madrid, and Plaza Mayor are excellent places to visit in Madrid. Watching a flamenco show is fun too. 
  • Accommodation: I recommend booking your hotel in Madrid in advance. Check availability and read reviews of hotels here.
  • Tour: See Madrid’s most famous landmarks on the bike with this 3-hour tour. You’ll learn lots of historical facts and explore the major highlights of the city.
  • Transport: Taking a hop-on-hop-off bus is a fun way to explore Madrid. Check out more details here

 

Barcelona to Madrid by flight

Flying is the fastest way to travel to Madrid. 

AirEuropa, Iberia, and Vueling offer direct flights from Barcelona and Madrid, and the journey takes about 1 hour 25 minutes. 

Planes frequently depart from Barcelona El Prat Airport (BCN) and arrive at Madrid Barajas Airport (MAD).

You can find flight options with Skyscanner

Info
Journey time1h 25m
PriceFrom €37
Distance314 miles (506 km)
Frequency15 flights per day
First flight7 am
Last flight10 pm
DepartureBarcelona El Prat Airport (BCN)
ArrivalMadrid Barajas Airport (MAD)
OperatorsAirEuropa, Iberia, and Vueling

 

Barcelona to Madrid by train

Renfe AVE and Renfe offer daily trains from Barcelona to Madrid, with the first one departing at 5:51 am and the last at 8:15 pm.

The average travel time is 2 hours 45 minutes, covering a 314 miles (506 km) distance. If you take the fastest train, you can shorten the travel time to 2 hours 30 minutes.

There are around 15 trains operating per day, and you can choose direct trains from Barcelona Sants and arrive at Madrid-Puerta de Atocha. Both stations are located within 1 km from the center.

The cheapest train ticket for this route is $21 (€17.75), but the average price of train tickets is $63 (€54).  You should book your train tickets early to get the best price.

Info
Journey timeFrom 2h 30m
PriceFrom $21
Distance314 miles (506 km)
Frequency15 trains per day
First train05:51
Last train20:15
Departure stationBarcelona Sants
Arrival stationMadrid-Puerta de Atocha
ChangesDirect trains available
OperatorsRenfe

 

Barcelona to Madrid by bus

Taking a bus is another way to travel to Madrid. 

Alsa offers daily buses between Barcelona and Madrid, and the journey takes about 7.5 hours. The bus ticket cost around $50 (€42).

Info
Journey time7h 30m
Price€42
Distance314 miles (506 km)
Frequency17 trains per day
First bus7 am
Last bus11:59 pm
Departure stationBarcelona, Estació d’Autobusos Nord
Arrival stationMadrid
OperatorsAlsa

 

Getting around Madrid

The best way to get around Madrid is by metro. There are 11 metro lines in total, and it operates from 6.05 am to 1.30 am.

You’ll need a Tarjeta Multi, a rechargeable card when taking public transport in Madrid. You can top up your account at machines in all metro stations.

Single-journey ticket costs €1.50, while the 10-ride option (bus and metro) is €12.20.