There are 7 ways to get from Barcelona to Porto by plane, train, bus, 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.
Fly to Francisco De Sá Carneiro Airport
best- Fly from Barcelona–El Prat Airport (BCN) to Francisco De Sá Carneiro Airport (OPO)plane BCN - OPO
4h 56m€34–158Train, bus via Madrid
- Take the train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandestrain Ave
- Take the train from Madrid Chamartín to Vigo Urzaiztrain Ave
- Take the bus from Vigo to Portobus
11h 37m€151–359Bus
- Take the bus from Barcelona - North Bus Station to Porto - Terminal Intermodal de Campanhãbus BlaBlaCar Bus
15h 20m€100–190Drive 1,054 km
- Drive from Barcelona to Portocar 1,054 km
11h 32m€167–241Fly to Vigo, bus
- Fly from Barcelona–El Prat Airport (BCN) to Vigo (VGO)plane BCN - VGO
- Take the bus from Vigo to Portobus
7h 9m€76–247Train, bus
- Take the train from Barcelona-Sants to Vigo Urzaiztrain Alv
- Take the bus from Vigo to Portobus FlixBus 1082 / ...
17h€189–296Bus via Ponts
- Take the bus from Barcelona, Estació d'Autobusos Nord to Pontsbus 306
- Take the bus from Ponts-Lleida to Porto - Terminal Intermodal de Campanhãbus
17h 32m€129–224
Barcelona to Porto by train and bus
Questions & Answers
The cheapest way to get from Barcelona to Porto is to fly which costs €30 - €160 and takes 4h 56m.
The fastest way to get from Barcelona to Porto is to fly which takes 4h 56m and costs €30 - €160.
Yes, there is a direct bus departing from Barcelona - North Bus Station station and arriving at Porto - Terminal Intermodal de Campanhã. Services depart once daily, and operate every day. The journey takes approximately 15h 20m.
The distance between Barcelona and Porto is 926 km. The road distance is 1054 km.
The best way to get from Barcelona to Porto without a car is to train and bus via Madrid which takes 11h 37m and costs €150 - €360.
It takes approximately 4h 56m to get from Barcelona to Porto, including transfers.
Barcelona to Porto bus services, operated by BlaBlaCar Bus, depart from Barcelona - North Bus Station.
The best way to get from Barcelona to Porto is to fly which takes 4h 56m and costs €30 - €160. Alternatively, you can bus, which costs €100 - €190 and takes 15h 20m.
Barcelona to Porto bus services, operated by BlaBlaCar Bus, arrive at Porto - Terminal Intermodal de Campanhã station.
Porto is 1h behind Barcelona. It is currently 12:36 PM in Barcelona and 11:36 AM in Porto.
What companies run services between Barcelona, Spain and Porto, Portugal?
Ryanair, Vueling Airlines, and two other airlines fly from Barcelona–El Prat Airport (BCN) to Francisco De Sá Carneiro Airport (OPO) every 3 hours. Alternatively, BlaBlaCar Bus operates a bus from Barcelona - North Bus Station to Porto - Terminal Intermodal de Campanhã once daily. Tickets cost €100–190 and the journey takes 15h 20m.
- Website
- vueling.com
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 1h 57m
- When
- Every day
- Estimated price
- €28–150
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport via Bilbao
- Ave. Duration
- 3h 40m
- When
- Saturday
- Estimated price
- €28–150
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport via Madrid
- Ave. Duration
- 4h 12m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €70–210
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport via Ibiza
- Ave. Duration
- 4h 35m
- When
- Tuesday and Saturday
- Estimated price
- €28–150
Flights from Barcelona–El Prat Airport to Vigo
- Ave. Duration
- 1h 52m
- When
- Every day
- Estimated price
- €50–180
Flights from Barcelona–El Prat Airport to Vigo via Madrid
- Ave. Duration
- 4h 3m
- When
- Every day
- Estimated price
- €70–330
- Website
- iberia.com
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 1h 57m
- When
- Every day
- Estimated price
- €28–150
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport via Madrid
- Ave. Duration
- 4h 12m
- When
- Monday, Wednesday, and Friday
- Estimated price
- €70–210
Flights from Barcelona–El Prat Airport to Vigo
- Ave. Duration
- 1h 52m
- When
- Every day
- Estimated price
- €50–180
Flights from Barcelona–El Prat Airport to Vigo via Madrid
- Ave. Duration
- 4h 3m
- When
- Every day
- Estimated price
- €70–330
- Website
- ryanair.com
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 2h
- When
- Every day
- Estimated price
- €35–150
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport via Palma Mallorca
- Ave. Duration
- 4h
- When
- Monday and Thursday
- Estimated price
- €35–150
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport via Ibiza
- Ave. Duration
- 4h 45m
- When
- Wednesday and Sunday
- Estimated price
- €35–150
- Website
- aireuropa.com
Flights from Barcelona–El Prat Airport to Francisco De Sá Carneiro Airport via Madrid
- Ave. Duration
- 4h 25m
- When
- Every day
- Estimated price
- €65–220
Flights from Barcelona–El Prat Airport to Vigo via Madrid
- Ave. Duration
- 4h 10m
- When
- Every day
- Estimated price
- €100–260
- Phone
- +34 91 232 03 20
- Website
- Renfe AVE
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 2m
- Frequency
- Hourly
- Estimated price
- €90–160
- Website
- Renfe AVE
Train from Madrid Chamartín to Vigo Urzaiz
- Ave. Duration
- 4h 12m
- Frequency
- 3 times a day
- Estimated price
- €95–170
- Website
- Renfe AVE
- Phone
- +34 900 926 851
- [email protected]
- Website
- Iryo
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 19m
- Frequency
- Hourly
- Estimated price
- €60–120
- Website
- Iryo
- Phone
- +34 900 759 781
- Website
- Ouigo
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 28m
- Frequency
- 5 times a day
- Estimated price
- €55–100
- Website
- Ouigo
- Phone
- +34 91 232 03 20
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Madrid-Puerta de Atocha-Almudena Grandes
- Ave. Duration
- 3h 2m
- Frequency
- Twice daily
- Estimated price
- €75–120
- Website
- Renfe Viajeros
Train from Madrid Chamartín to Vigo Urzaiz
- Ave. Duration
- 4h 23m
- Frequency
- Once daily
- Estimated price
- €80–130
- Website
- Renfe Viajeros
Train from Barcelona-Sants to Vigo Urzaiz
- Ave. Duration
- 13h 52m
- Frequency
- Once daily
- Estimated price
- €170–270
- Website
- Renfe Viajeros
Rome2Rio's guide to FlixBus
Contact DetailsContact Details
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Vigo to Porto
- Ave. Duration
- 2h 15m
- Frequency
- Every 3 hours
- Estimated price
- €12–20
- Website
- Flixbus
Bus from Vigo to Porto
- Ave. Duration
- 2h 15m
- Frequency
- Every 3 hours
- Estimated price
- €12–20
- Website
- Flixbus
Bus from Vigo to Porto
- Ave. Duration
- 2h 15m
- Frequency
- Every 3 hours
- Estimated price
- €12–20
- Website
- Flixbus
- Phone
- +34 (0) 986 288 030
- [email protected]
- Website
- Autna S.L.
Bus from Vigo to Porto
- Ave. Duration
- 2h 30m
- Frequency
- 3 times a day
- Estimated price
- €17–30
- Website
- Autna S.L.
Bus from Vigo to Porto
- Ave. Duration
- 2h 30m
- Frequency
- 3 times a day
- Estimated price
- €17–30
- Website
- Autna S.L.
Bus from Vigo to Porto
- Ave. Duration
- 2h 30m
- Frequency
- 3 times a day
- Estimated price
- €17–30
- Website
- Autna S.L.
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar Bus
Bus from Barcelona - North Bus Station to Porto - Terminal Intermodal de Campanhã
- Ave. Duration
- 15h 20m
- Frequency
- Once daily
- Estimated price
- €100–190
- Website
- BlaBlaCar Bus
- Phone
- +34 (0) 973 273 151
- [email protected]
- Website
- atmlleida.cat
Bus from Barcelona, Estació d'Autobusos Nord to Ponts
- Ave. Duration
- 2h 17m
- Frequency
- Twice daily
- Estimated price
- €34
- Schedules at
- atmlleida.cat
- Phone
- +376 806 555
- [email protected]
- Website
- Cooperativa Interurbana Andorrana
Bus from Ponts-Lleida to Porto - Terminal Intermodal de Campanhã
- Ave. Duration
- 14h 15m
- Frequency
- Twice a week
- Estimated price
- €95–190
- Website
- Cooperativa Interurbana Andorrana
- Phone
- +34 (0) 902 23 95 79
- [email protected]
- Website
- autocareslazara.com
Bus from Ponts-Lleida to Porto - Terminal Intermodal de Campanhã
- Ave. Duration
- 13h 45m
- Frequency
- Once a week
- Estimated price
- €95–110
- Schedules at
- autocareslazara.com
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
Read the travel guide
What are the different types of Renfe trains in Spain?
Read the travel guide
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Yes, the driving distance between Barcelona to Porto is 1054 km. It takes approximately 11h 32m to drive from Barcelona to Porto.
Book your Barcelona to Porto bus tickets online with Omio.
There are 6843+ hotels available in Porto.




























