The distance between Madrid and Barcelona is around 620km (385 miles) and the quickest way to get there is to take the train which takes around 3h 10m.
We've found 3 different ways to get from Madrid to Barcelona by train, bus and car. The recommended routes, which include information on duration, ticket price, and level of difficulty, can be found below.
👋 Also check out Barcelona → Madrid if you're planning a return trip.
Take the train to Barcelona-Sants.
Take the bus to Barcelona.
There are several options for getting from Madrid to Barcelona by train, bus and car. The cheapest option is to take the bus which costs around €35 ($35) and will take around 7h 35m. If you need to get there more quickly, you can take the train and arrive in approximately 3h 10m, though it is a bit more costly at approximately €80 ($80).
The distance between Madrid and Barcelona is around 620km (385 miles). In a direct line (as the crow flies), the distance is 506km (314 miles)
It takes around 3h 10m to get from Madrid and Barcelona by train. If you are travelling by car it will take around 5h 60m to drive there.
The quickest way to get from Madrid to Barcelona is to take the train which takes around 3h 10m and will set you back approx €80 ($80).
The cheapest way to travel between Madrid and Barcelona, if you exclude driving, is to take the bus which will typically cost around €35 ($35) for a standard one-way ticket.
Yes there is a train service that runs between Madrid and Barcelona. It typically takes around 3h 10m and departs hourly.
Yes there is a direct train service that runs between Madrid and Barcelona with no changeovers required. The train runs hourly and takes 3h 10m.
Renfe AVE and Renfe SNCF run train services between Madrid and Barcelona. Trains depart hourly and will take around 3h 10m, however, this may vary depending on the particular service and whether it runs express or stops all stations.
Yes there is a bus that runs regularly from Madrid and Barcelona. It typically takes around 7h 35m and departs 4 times a week.
Yes there is a direct bus service that runs between Madrid and Barcelona with no changeovers required. The bus runs 4 times a week and takes 7h 35m.
FlixBus run regular bus services between Madrid and Barcelona. Buses run 4 times a week and take around 7h 35m on average but will vary depending on you book with.
It doesn't look like you can fly directly from Madrid to Barcelona. We recommend that you take the train to Barcelona-Sants. instead which will take 3h 10m.
The closest major airport to Barcelona is Josep Tarradellas Airport Barcelona-El Prat (BCN) (BCN) which is approximately 12km (8 miles) from Barcelona. Girona-Costa Brava Airport (GRO) (GRO) and Reus Airport (REU) (REU) are also nearby and might be a better alternative airport depending on where you are flying from.
Yes it is possible to drive from Madrid and Barcelona. The distance is around 620km (385 miles) by road and it will take around 5h 60m in normal traffic conditons.
If you don't have a car, the easiest way to get from Madrid to Barcelona is to take the train which takes, on average, 3h 10m and will usually cost around €80 ($80).
Transport option | Duration | Cost | Frequency | Distance |
---|---|---|---|---|
Train | 3h 10m | €80($80) | hourly | 620km (385 miles) |
Bus | 7h 35m | €35($35) | every 2 hours | 623km (387 miles) |
Drive | 5h 60m | €74($74) | on demand | 620km (385 miles) |
The following major airports near Barcelona offer regular flights to various popular destinations within Spain and internationally.