How to get from Madrid to Barcelona by train, bus or flight.
The best way to travel from Madrid to Barcelona is by taking a train because it’s the best combination of price and speed.
Find all the dates and times for this journey by train, bus, flight, and ferry .
Distance | 312 miles (504 km) | |
Available travel modes | Bus, flight or train | |
Ticket price range | $23 - $27 | |
Cheapest mode | Flight • $23 (€20) • 1 h 25 min | |
Fastest mode | Flight • $23 (€20) • 1 h 25 min | |
Popular travel companies | Alsa, Iberia or Iryo |
Travel 312 miles (504 km) by bus, flight or train from Madrid to Barcelona. If speed is a priority, then a flight is the best option with an average duration of 1 h 25 min; whereas, if saving money is more important, then a flight is the best option with prices starting as low as $23 (€20). The most popular travel companies which serve this route are Alsa, Iberia or Iryo among others. Travelers can even take a direct bus, flight or train from Madrid to Barcelona.
To travel from Madrid to Barcelona, there are various transportation methods available, from buses and trains, to flights. This is a popular route connecting the two largest cities in Spain. Since the trips are generally not that long, people tend to travel for Madrid to Barcelona for work, thanks to the high-speed trains, or even just a weekend visit. The daily train and flight travel time from Madrid to Barcelona takes around one and a half to three hours to cover the distance between the two cities of more or less 312 miles (504 km). However, the journeys by bus can be overnight and take as long as 8h 25min. Most of the transportation methods between Madrid and Barcelona are direct trips, not requiring stopovers.
It’s possible to find very affordable routes on all Madrid-Barcelona methods of transportation. In general, the cheapest way to get from Madrid to Barcelona is taking a train. The trains from Madrid to Barcelona are operated by Renfe and run throughout the whole day, departing every one to two hours. Travelers can expect there to be at least 15 departures per day. These train journeys are all direct trips, leaving out of the Madrid Puerta de Atocha station and at arriving at Barcelona Sants train station. To find cheap tickets from Madrid to Barcelona, try to book them in advance, before prices rise as the departure date gets closer. Be as flexible as possible with your travel times and dates as well, to pick and choose the most affordable routes and transportation.
The fastest way to get from Madrid to Barcelona is most likely by train. The flights are direct and also fast, however both airports are farther from the city center than the train stations, plus passengers must consider the extra check in and boarding time it requires as well. The high-speed train routes are the fastest option. These trains are the AVE lines, part of the Spanish national railway, The shortest Madrid to Barcelona travel time by train is more or less 2h 50min. These trains depart from the Madrid Puerta de Atocha train station and arrive at the Barcelona Sants train station.
Skyline of Madrid at sunrise. Source: Shutterstock
Omio is an online travel platform that allows you to compare and book a variety of methods of transport. It offers various transportation providers and the times of departure. The platform allows you to filter your search prioritizing travel time or price, scanning all options with a glance.Omio has the option of using mobile tickets as well as putting the website in your language for a personalized customer service. For those looking for inspiration, check out the useful tips published in the Omio magazine.
Taking a train from Madrid Puerta de Atocha to Barcelona Sants station is a very common and frequent way of getting between these two cities. Renfe is the Spanish national railway operator making at least 15 trips per day. This is generally the cheapest option as well as the fastest option for getting from Madrid to Barcelona. The high-speed AVE train makes getting to Barcelona in under 3h an option for business travelers or for those looking to go to Barcelona for a short period of time. The Renfe trains available from Madrid to Barcelona are all direct, they don’t require passengers to switch trains at any point along the way.
Renfe is the sole train provider for tickets from Madrid to Barcelona. Renfe offers over 80 journeys per week. All of these trips from Madrid to Barcelona by train are direct and don’t require passengers to switch lines or trains along the way. There are both high-speed AVE trains as well as standard Regional Express trains operating these lines. The fastest trip by train to Barcelona on an AVE line takes as little as around 2h 50min.
There currently aren’t any available night trains operating from Madrid to Barcelona.
There are daily buses going from Madrid to Barcelona, leaving Madrid every few hours. These bus trips are operated by the Spanish bus company, Alsa. The buses depart from various stations in Madrid, including the Aeropuerto Barajas T4, Intercambiador Avenida de América, Estación Sur Méndez Álvaro and the Intercambiador de Plaza Castilla stations. These journeys arrive in Barcelona about 8h later into either Estación de Autobuses Nord, Barcelona Gran Vía or Estación de Autobuses Sants stations. All of these trips are direct and don’t require stopovers.
Alsa is the main provider of bus routes going from Madrid to Barcelona. A lot of these routes stop in multiple stations in Madrid before starting the trip, and also makes various stops in Barcelona upon their arrival. There are both daytime buses as well as nighttime routes with Alsa, and there are more or less 10 full routes per day.
There are various flights per day making the trip from Madrid to Barcelona. These flights depart out of Madrid Barajas Airport (MAD) and arrive at Barcelona El Prat Airport (BCN). The main airlines operating these nonstop journeys are Iberia, Vueling and Air Europa. There are over 10 routes per day from Madrid to Barcelona. The flight from Madrid to Barcelona takes more or less 1h 15min from take-off to landing. However, from the Barcelona El Prat Airport to the city center, it’s about 40min on the A1 or A2 Airport bus routes.
The main airline operating the flights from Madrid Barajas Airport to Barcelona El Prat Airport is the Spanish airline, Iberia. Iberia has at least eight departures per day to Barcelona. They run more or less every hour or two. The earliest flight from Madrid to Barcelona with Iberia is around 8:00 a.m., at the latest at about 8:15 p.m. These Iberia flights are all nonstop from Madrid to Barcelona.
Barcelona is one of the most popular cities to visit in Spain and the second largest in the country. This coastal city is famous for its Gaudí architecture and Mediterranean culture. When you think of Barcelona, the iconic Sagrada Familia Basilica probably pops into your head. Gaudí also designed the unconventional modernist Casas Milà and Batllo located in the city center. Another famous part of the city of Barcelona is exploring the Gothic Quarter. Here you’ll find winding roads made of cobblestone, narrow streets and roman buildings. This experience will set you right back in the middle ages. Of course, one of the greatest things to experience when visiting a new city is their culture and cuisine. Some traditional dishes visitors must try when in Barcelona are fideuà, the noodle version of paella, roasted vegetables of an escalivada, or possibly “crema catalana”, a version of a creme brulée, for dessert.
Beach of Barcelona at sunrise. Source: Shutterstock
Barcelona is full of plenty of sites to see and new experiences.
You can travel by train, bus or flight for as low as $21 (€19). When you search for schedules and tickets, Omio will show you the best route.
Renfe Avlo is a Spanish low-cost high-speed rail service that operates the routes between the cities of Madrid, Zaragoza, Barcelona, and Valencia by the national rail company Renfe. Avlo trains travel at speeds of up to 186 mph (300 km/h). All Avlo tickets are in Economy or "Básica" Class with assigned seats and include onboard services like free wifi, onboard-entertainment (via the PlayRenfe app or network), power sockets and vending machines. Child tickets available from 0 to 13 years old then 14 or over counts as an adult ticket. You can upgrade your ticket to bring extra luggage onboard on top of your included backpack and 55x35x25 cm hand luggage with no weight limit. Cheap Avlo tickets start from 7 Euros and are a great option for travelling from Madrid to Barcelona by train.
Alsa is the main provider of travel travel in Spain. As a subsidiary of the UK travel company National Express, Alsa offers a plethora of regional, national and international routes and transports more than 300 million passengers per year. Alsa has an impressive fleet of travel with different levels of comfort and amenities on offer. Aside from the Alsa Normal travel with free WiFi, bathrooms, footrests and entertainment on board, the Alsa Supra, Alsa Eurobus and Alsa Premium travel provide more luxurious services when traveling by road, depending on the specific route. Apart from the Standard ticket, Alsa offers other travel tickets like Minimum, Reduced and Flexible fares on select routes.
Air France is France's leading airline offering flights within and outside Europe; you can choose different ticket types for your travel between Madrid and Barcelona including: Economy Light, Economy Standard, Economy Flex, Premium Economy and Business.
There are 3 travel options between Madrid and Barcelona. You can take a bus, flight or train.
The cheapest way to get from Madrid to Barcelona is by taking a flight with average ticket prices of $23 (€20) compared to other travel options to Barcelona:
A flight is $2 (€2) less than a bus with an average ticket price of $25 (€22) from Madrid to Barcelona.
Taking a flight costs $4 (€4) less than taking a train, which costs on average $27 (€24) for the same trip.
The fastest way to get to Barcelona from Madrid is by flight with an average travel time of 1 h 25 min.
Other travel options to Barcelona take longer:
Bus takes 8 h 5 min on average.
Getting to Barcelona by train takes 2 h 30 min on average.
The Madrid to Barcelona distance is around 312 miles (504 km).
The average frequency per day from Madrid to Barcelona is:
However, we recommend checking specific travel dates for your journey between Madrid and Barcelona as scheduled services by bus, flight or train can vary by season or day of the week.
These are the most popular departure and arrival points from Madrid to Barcelona:
Omio works with many trusted partners that can help you travel the best way from Madrid to Barcelona:
Yes, there are direct routes from Madrid to Barcelona with the following travel companies:
Direct services to Barcelona tend to save you time and add more convenience as you won't need to transfer at another stop in between, so it's worth paying attention to before booking tickets for your journey.
Need a place to stay in Barcelona?
Top pick hotels
Entire homes & apartments
Find the best accommodation for you, with our partner Expedia
Here are some other resources that might have the information you need