How to Travel from Madrid to Barcelona by Train, Bus, Car, and Plane

Illustration showing 4 routes to get between Madrid and Barcelona and the corresponding travel time

TripSavvy 

Visitors to Spain often start in Madrid, the culturally rich and artistically inclined capital, before heading off to Barcelona, with its Mediterranean beaches and distinctive architecture. Both cities are unique and offer very different views of Spanish life, and each one of them is worth at least a few days of your time. Thankfully, getting between the two cities couldn't be easier.

The high-speed train from Madrid to Barcelona gets you from one city center to the other in two and a half hours, and the low-cost train makes it affordable as well. But flights are even quicker—not including travel to and from the airport and checking in—and can oftentimes be cheaper than the train. The bus is the cheapest option, but it takes around eight hours, significantly longer than renting a car and driving yourself.

How to Get from Madrid to Barcelona

  • Train: 2 hours, 30 minutes, from $12
  • Flight: 1 hour, 15 minutes, from $45
  • Bus: 7 hours, 35 minutes, from $11
  • Car: 6 hours, 385 miles (620 kilometers)

By Train

Spain's national railway system, Renfe, provides two types of high-speed trains between Madrid and Barcelona: the standard AVE train and the low-cost Avlo. Both trains whisk passengers from Atocha Station in Madrid to Barcelona Sants Station in as little time as two and a half hours, the only difference being the amenities offered and the price. The Avlo train limits passengers to one carry-on sized bag, similar to a budget airline, and doesn't offer seat selection or a cafeteria car like the standard AVE train does. AVE tickets start at $35 if you buy them far in advance, but get more and more expensive as your trip gets closer, sometimes costing up to $150. Avlo, on the other hand, starts at about $12 when you buy your tickets early and gets you to Barcelona just as quick, with prices maxing out at about $55.

If you plan ahead and buy tickets early, the train is the best deal for getting between cities. But if you're planning last minute, Avlo tickets are likely to sell out and the AVE may have jumped considerably in price.

By Plane

If the airports were as centrally located as the train stations, flying would hands-down be the best method for travel from Madrid to Barcelona. Flights are generally pretty cheap with several options per day, and you're barely in the air enough time to finish an episode of your favorite show before you've touched down at Barcelona El Prat Airport. However, it takes about an hour to reach Madrid's airport via public transportation and then another hour to reach Barcelona's city center. Factor in all of that time plus airport check-in, security, and waiting at your gate, and the total travel time is now significantly longer than taking the train.

Even though the train is more comfortable and convenient than flying, it can also be more expensive, especially if your travel dates are near. Last-minute plane tickets can still be relatively cheap, especially when traveling in low tourist season. Always compare your flights with train tickets; the difference in price may shock you.

By Bus

When it's the middle of summer vacation, everyone is traveling, and trains and flights are completely booked or exorbitantly priced, then the bus is your next best option for getting to Barcelona. The major Spanish bus company, Alsa, offers various routes per day from Avenida de America bus station in Madrid to Barcelona Sants or Barcelona Nord stations. It's a long ride, almost eight hours and possibly more with traffic, but there are several nighttime routes so you don't have to lose out on an entire day of your trip sitting on the bus.

Alsa bus tickets start at $11 when you buy them early, but—just like trains and flights—get more expensive the longer you wait, with same-day tickets costing up to $50 for a one-way ride.

By Car

If you value being able to travel on your own time and want to make your own itinerary, renting a car in Spain isn't difficult and could be the best option. If you're traveling with a group and can split the costs of the rental, gas, and tolls, it may be even cheaper than each of you buying your own individual transportation tickets. However, most cars in Spain use manual transmissions, so expect to pay more for an automatic if that's all you can drive.

The biggest advantage of taking a car is being able to stop and explore in any of the towns between Madrid and Barcelona, or going on day trips once you arrive. Along the route, make time for a quick stop in Zaragoza, a city known for its local gastronomy, Moorish architecture, and scenic river views. After arriving in Barcelona, take advantage of having a vehicle by visiting nearby sites like the mountains of Montserrat or the cute beach town of Sitges.

Don't forget, the freedom of having your own car is also tempered with the hassle of having to park it. Vehicles are great for day trips and traveling between cities, but once you're in Madrid or Barcelona, you're dealing with metropolitan traffic and difficult-to-find parking. Street parking is hard to come by in the city center, so expect to pay a premium to keep your car in a lot.

What to See in Barcelona

The moment you arrive in Barcelona, it's obvious why this Mediterranean paradise is one of Europe's most popular cities to visit. It offers a little of everything: mild weather year-round, spectacular beaches, cultural treasures, excellent cuisine, and wild nightlife. The Catalan architect Antoni Gaudí left his mark on the city, and his buildings are some of Barcelona's most noteworthy attractions, from the quirky Park Güell to the awe-inspiring Sagrada Familia Cathedral. After visiting those, walk down La Rambla, the city's central pedestrian street, and continue on to explore Barcelona's diverse neighborhoods on foot. While not necessary, it's recommended to stop often for tapas and drinks—Spanish sparkling wine, or cava, is produced locally and a good place to start.

Was this page helpful?