There are 7 ways to get from Barcelona to Porto by plane, train, bus, towncar 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.
Recommended option
Fly to Porto • 4h 48m
6 alternative options
Fly to Vigo, train • 7h 44m
Train via Madrid • 11h 36m
Bus • 17h 10m
Train • 17h 52m
Bus, towncar • 19h 28m
Drive • 10h 57m
Barcelona to Porto by bus
Questions & Answers
The cheapest way to get from Barcelona to Porto is to fly which costs €35 - €180 and takes 4h 48m.
The fastest way to get from Barcelona to Porto is to fly which takes 4h 48m and costs €35 - €180.
No, there is no direct bus from Barcelona to Porto. However, there are services departing from Estación de Autobuses Barcelona Nord and arriving at Porto - Terminal Intermodal de Campanhã via Lleida (Lérida). The journey, including transfers, takes approximately 17h 10m.
No, there is no direct train from Barcelona to Porto. However, there are services departing from Barcelona-Sants and arriving at Porto - Campanha via Vigo Guixar. The journey, including transfers, takes approximately 17h 52m.
The distance between Barcelona and Porto is 927 km. The road distance is 1124.7 km.
The best way to get from Barcelona to Porto without a car is to train via Madrid which takes 11h 36m and costs €80 - €180.
It takes approximately 4h 48m to get from Barcelona to Porto, including transfers.
Barcelona to Porto bus services, operated by Alsina Graells, S.A., depart from Estación de Autobuses Barcelona Nord station.
Barcelona to Porto train services, operated by Renfe Viajeros, depart from Barcelona-Sants station.
The best way to get from Barcelona to Porto is to fly which takes 4h 48m and costs €35 - €180. Alternatively, you can train via Madrid, which costs €80 - €180 and takes 11h 36m, you could also bus, which costs €85 - €110 and takes 17h 10m.
- Distance: 927.2 km
- Duration: 4h 48m
What companies run services between Barcelona, Spain and Porto, Portugal?
Ryanair, Vueling Airlines and two other airlines fly from Barcelona to Porto every 4 hours. Alternatively, you can take a train from Barcelona to Porto via Estación de tren de Atocha, Estación de Atocha Cercanías, Madrid-Chamartin, Vigo Urzaiz, Urzaiz - Muro Estación, Urzaiz 13, and Vigo Guixar in around 11h 36m.
- Website
- ryanair.com
Flights from Barcelona to Porto
- Ave. Duration
- 1h 57m
- When
- Every day
- Estimated price
- €30 - €280
Flights from Barcelona to Porto via Sevilla
- Ave. Duration
- 4h 30m
- When
- Tuesday
- Estimated price
- €30 - €280
Flights from Barcelona to Vigo
- Ave. Duration
- 2h
- When
- Monday, Thursday, Saturday and Sunday
- Estimated price
- €35 - €310
- Website
- vueling.com
Flights from Barcelona to Porto
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- €40 - €220
Flights from Barcelona to Porto via Madrid
- Ave. Duration
- 3h 57m
- When
- Monday to Friday
- Estimated price
- €75 - €350
Flights from Barcelona to Porto via Bilbao
- Ave. Duration
- 4h 30m
- When
- Friday
- Estimated price
- €40 - €220
Flights from Barcelona to Vigo
- Ave. Duration
- 1h 52m
- When
- Every day
- Estimated price
- €35 - €310
Flights from Barcelona to Vigo via Madrid
- Ave. Duration
- 3h 41m
- When
- Every day
- Estimated price
- €70 - €440
- Website
- iberia.com
Flights from Barcelona to Porto
- Ave. Duration
- 1h 55m
- When
- Every day
- Estimated price
- €40 - €220
Flights from Barcelona to Porto via Madrid
- Ave. Duration
- 3h 57m
- When
- Monday to Friday
- Estimated price
- €75 - €350
Flights from Barcelona to Porto via Bilbao
- Ave. Duration
- 4h 30m
- When
- Friday
- Estimated price
- €40 - €220
Flights from Barcelona to Vigo
- Ave. Duration
- 1h 52m
- When
- Every day
- Estimated price
- €35 - €310
Flights from Barcelona to Vigo via Madrid
- Ave. Duration
- 3h 41m
- When
- Every day
- Estimated price
- €70 - €440
- Website
- aireuropa.com
Flights from Barcelona to Porto via Madrid
- Ave. Duration
- 4h 25m
- When
- Every day
- Estimated price
- €75 - €380
Flights from Barcelona to Vigo via Madrid
- Ave. Duration
- 4h 15m
- When
- Every day
- Estimated price
- €65 - €290
Spain's excellent and extensive rail system connects cities across Spain and into neighbouring countries. Renfe's high-speed AVE trains can reach speeds of up to 350km/h, making travel between major cities very efficient. All medium- and long-distance trains require a seat reservation; ticket sales for these trains usually open 30-60 days before travel. Most Renfe trains have two classes: Turista (2nd class) and Preferente (1st class), although some AVE trains offer Turista Plus. There is free WiFi for Preferente passengers and for those with a +Renfe loyalty card.
Rome2Rio's guide to Renfe Viajeros
Contact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Vigo Guixar to Porto - Campanha
- Ave. Duration
- 2h 22m
- Frequency
- Twice daily
- Estimated price
- €15 - €22
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Estación de tren de Atocha
- Ave. Duration
- 3h 17m
- Frequency
- 5 times a day
- Estimated price
- €45 - €65
- Website
- https://www.renfe.com/es/en
Train from Madrid-Chamartin to Vigo Urzaiz
- Ave. Duration
- 4h 12m
- Frequency
- 3 times a day
- Estimated price
- €45 - €70
- Website
- https://www.renfe.com/es/en
Train from Barcelona-Sants to Vigo Guixar
- Ave. Duration
- 14h 30m
- Frequency
- 3 times a week
- Estimated price
- €100 - €140
- Website
- https://www.renfe.com/es/en
Rome2Rio's guide to Renfe AVE
Contact Details
- Phone
- +34 91 232 03 20
- Website
- renfe.com
Train from Barcelona-Sants to Estación de tren de Atocha
- Ave. Duration
- 2h 30m
- Frequency
- Hourly
- Estimated price
- €50 - €75
- Website
- https://www.renfe.com/es/en
- Básico
- €50 - €75
Train from Madrid-Chamartin to Vigo Urzaiz
- Ave. Duration
- 4h 18m
- Frequency
- Once daily
- 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 Barcelona-Sants to Estación de tren de Atocha
- Ave. Duration
- 2h 52m
- Frequency
- Every 2 hours
- Estimated price
- €30 - €80
- Website
- https://iryo.eu/en/home
- Inicial
- €30 - €80
- Phone
- +34 910 780 990
Train from Barcelona-Sants to Estación de tren de Atocha
- Ave. Duration
- 2h 55m
- Frequency
- 5 times a day
- Estimated price
- €21 - €30
- Website
- https://www.ouigo.com/es/en
- Phone
- +34 937 065 366
- Website
- barcelonanord.cat
Bus from Estación de Autobuses Barcelona Nord to Lleida
- Ave. Duration
- 3h 10m
- Frequency
- Every 3 hours
- Schedules at
- Alsina Graells, S.A.
A Spanish subsidiary of National Express, ALSA provides bus and coach services across Spain and neighbouring countries including Portugal, France, Germany, the Netherlands, Italy, Poland and Malta. Founded in 1923, ALSA values service and the customer experience. Buses are equipped with communal TV screens showing movies, individual behind-seat screens, ALSA radio, app for books and music, and free WiFi. ALSA services are accessible to people with disabilities, and guide dogs are welcome on all journeys. There are three types of tickets on offer (Frequent Traveller Pass, Share Pass and ALSA Pass), along with discounts for senior citizens, students and children.
Contact Details
- Phone
- +34 910 207 007
- alsa@alsa.es
- Website
- alsa.es
Bus from Estación de Autobuses Barcelona Nord to Lleida
- Ave. Duration
- 2h 45m
- Frequency
- 4 times a day
- Estimated price
- €13 - €20
- Website
- https://www.alsa.com/en/web/bus/home
- Phone
- +34 (0) 902 23 95 79
- info@rutasvigo.com
- Website
- autocareslazara.com
Bus from Lleida (Lérida) to Porto - Terminal Intermodal de Campanhã
- Ave. Duration
- 13h
- Frequency
- Twice a week
- Estimated price
- €75 - €90
- Schedules at
- autocareslazara.com
- Phone
- +34 900 92 91 92
- info@monbus.es
- Website
- monbus.es
Bus from Estación de Autobuses Barcelona Nord to Ourense (Bus Station)
- Ave. Duration
- 14h 45m
- Frequency
- 3 times a week
- Estimated price
- €60 - €90
- Website
- https://www.monbus.es/en
- Phone
- (+351) 220971653
- info@vmtransfers.com
- Website
- vmtransfers.com
Towncar from Ourense to Porto - Aeroporto Francisco Sá Carneiro
- Ave. Duration
- 3h 11m
- Frequency
- On demand
- Estimated price
- €200 - €240
- More information at
- VMTransfers
Want to know more about travelling around Portugal
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
Top tips on how to best navigate the nation by train, from Alicante to Zaragoza
Read the travel guideWhat are the different types of Renfe trains in Spain?
A simple guide to the different trains, routes and facilities, so you can identify which service is right for you.
Read the travel guideMore Questions & Answers
Barcelona to Porto bus services, operated by Autocares Lázara, arrive at Porto - Terminal Intermodal de Campanhã station.
Porto is 1h behind Barcelona. It is currently 7:05 PM in Barcelona and 6:05 PM in Porto.
Barcelona to Porto train services, operated by Renfe Viajeros, arrive at Porto - Campanha station.
Yes, the driving distance between Barcelona to Porto is 1125 km. It takes approximately 10h 57m to drive from Barcelona to Porto.
There are 5247+ hotels available in Porto. Prices start at €31 per night.