There are 7 ways to get from Serpa to Porto by bus, train, car, or plane
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus, train
best- Take the bus from Terminal Rodoviário de Serpa to Interface de Transportes de Setúbalbus
- Take the bus from Interface de Transportes de Setúbal P1 to Estação Rodoviária de Lisboa Orientebus
- Take the train from Lisboa Oriente to Porto Campanhatrain Ic
6h 55m€49–96Bus via Lisbon
cheapest- Take the bus from Terminal Rodoviário de Serpa to Estação Rodoviária de Sete Riosbus 85 | Vila Verde de Ficalho
- Take the bus from Estação Rodoviária de Sete Rios to Porto - Terminal Intermodal de Campanhãbus Lisboa / ...
7h 50m€36–88Train
- Take the train from Beja to Casa Brancatrain Ic
- Take the train from Casa Branca to Lisboa Orientetrain Ic
- Take the train from Lisboa Oriente to Porto Campanhatrain Ic
7h 43m€58–107Drive 472.5 km
- Drive from Serpa to Portocar 472.5 km
4h 52m€74–107Bus to Faro Airport, fly
- Take the bus from Terminal Rodoviário de Beja to Farobus
- Fly from Faro Airport (FAO) to Francisco De Sá Carneiro Airport (OPO)plane FAO - OPO
6h 42m€51–183Bus
- Take the bus from Terminal Rodoviário de Beja to Portobus N1016
8h 51m€49–80Train, train to Lisbon-Portela Airport, fly
- Take the train from Beja to Casa Brancatrain
- Take the train from Casa Branca to Lisboa Orientetrain
- Fly from Lisbon-Portela Airport (LIS) to Francisco De Sá Carneiro Airport (OPO)plane LIS - OPO
7h 17m€76–173
Serpa to Porto by bus and train
Questions & Answers
The cheapest way to get from Serpa to Porto is to bus via Lisbon which costs €35 - €90 and takes 7h 50m.
The fastest way to get from Serpa to Porto is to drive which takes 4h 52m and costs €70 - €110.
No, there is no direct bus from Serpa to Porto. However, there are services departing from Terminal Rodoviário de Serpa and arriving at Porto - Terminal Intermodal de Campanhã via Estação Rodoviária de Sete Rios. The journey, including transfers, takes approximately 7h 50m.
No, there is no direct train from Serpa to Porto. However, there are services departing from Beja and arriving at Porto Campanha via Casa Branca and Lisboa Oriente. The journey, including transfers, takes approximately 7h 43m.
The distance between Serpa and Porto is 528 km. The road distance is 472.5 km.
The best way to get from Serpa to Porto without a car is to bus and train which takes 6h 55m and costs €45 - €100.
It takes approximately 6h 55m to get from Serpa to Porto, including transfers.
Serpa to Porto bus services, operated by Rede Expressos, depart from Terminal Rodoviário de Serpa station.
Serpa to Porto train services, operated by Comboios de Portugal, depart from Beja station.
The best way to get from Serpa to Porto is to train which takes 7h 43m and costs €55 - €110. Alternatively, you can bus via Lisbon, which costs €35 - €90 and takes 7h 50m.
What companies run services between Serpa, Portugal and Porto, Portugal?
You can take a bus from Terminal Rodoviário de Serpa to Porto Campanha via Beja - Estação CP, Beja, Casa Branca, and Lisboa Oriente in around 7h 43m. Alternatively, you can take a bus from Terminal Rodoviário de Serpa to Porto - Terminal Intermodal de Campanhã via Estação Rodoviária de Sete Rios in around 7h 50m.
- Website
- flytap.com
Flights from Faro Airport to Francisco De Sá Carneiro Airport via Lisbon-Portela Airport
- Ave. Duration
- 3h 15m
- When
- Monday, Tuesday, Thursday, Friday, Saturday, and Sunday
- Estimated price
- €85–150
Flights from Lisbon-Portela Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 55 min
- When
- Every day
- Estimated price
- €50–110
- Website
- ryanair.com
Flights from Faro Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 1h 9m
- When
- Every day
- Estimated price
- €30–130
- Phone
- +351 210 900 032
- Website
- cp.pt
Train from Lisboa Oriente to Porto Campanha
- Ave. Duration
- 2h 39m
- Frequency
- Hourly
- Estimated price
- €35–65
- Website
- https://www.cp.pt/en/
Train from Beja to Casa Branca
- Ave. Duration
- 52 min
- Frequency
- Every 3 hours
- Estimated price
- €6–13
- Website
- https://www.cp.pt/en/
Train from Casa Branca to Lisboa Oriente
- Ave. Duration
- 1h 19m
- Frequency
- Every 3 hours
- Estimated price
- €13–24
- Website
- https://www.cp.pt/en/
Train from Lisboa Oriente to Porto Campanha
- Ave. Duration
- 2h 39m
- Frequency
- Hourly
- Estimated price
- €35–65
- Website
- https://www.cp.pt/en/
Train from Beja to Casa Branca
- Ave. Duration
- 52 min
- Frequency
- Every 3 hours
- Estimated price
- €6–13
- Website
- https://www.cp.pt/en/
Train from Casa Branca to Lisboa Oriente
- Ave. Duration
- 1h 19m
- Frequency
- Every 3 hours
- Estimated price
- €13–24
- Website
- https://www.cp.pt/en/
- Phone
- +351 21 75 24 524
- Website
- rede-expressos.pt
Bus from Terminal Rodoviário de Serpa to Interface de Transportes de Setúbal
- Ave. Duration
- 3h
- Frequency
- Twice daily
- Estimated price
- €11–26
- Website
- https://rede-expressos.pt/en
Bus from Terminal Rodoviário de Beja to Faro
- Ave. Duration
- 2h 30m
- Frequency
- Once daily
- Estimated price
- €10–25
- Website
- https://rede-expressos.pt/en
Bus from Terminal Rodoviário de Serpa to Estação Rodoviária de Sete Rios
- Ave. Duration
- 3h 45m
- Frequency
- Twice daily
- Estimated price
- €14–35
- Website
- https://rede-expressos.pt/en
Bus from Estação Rodoviária de Sete Rios to Porto - Terminal Intermodal de Campanhã
- Ave. Duration
- 3h 30m
- Frequency
- Hourly
- Estimated price
- €22–55
- Website
- https://rede-expressos.pt/en
- Phone
- +351 210 418 800
- [email protected]
- Website
- carrismetropolitana.pt
Bus from Interface de Transportes de Setúbal P1 to Estação Rodoviária de Lisboa Oriente
- Ave. Duration
- 42 min
- Frequency
- Every 30 minutes
- Estimated price
- €3–6
- Schedules at
- carrismetropolitana.pt
- On-board Ticket
- €3–6
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- https://www.flixbus.fr
Bus from Terminal Rodoviário de Beja to Faro
- Ave. Duration
- 2h 20m
- Frequency
- Once daily
- Estimated price
- €12–21
- Website
- https://www.flixbus.co.uk
Bus from Terminal Rodoviário de Beja to Porto
- Ave. Duration
- 7h 15m
- Frequency
- Once daily
- Estimated price
- €45–75
- Website
- https://www.flixbus.co.uk
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
Want to know more about Flixbus?
Read the travel guide
More Questions & Answers
Serpa to Porto bus services, operated by Rede Expressos, arrive at Estação Rodoviária de Sete Rios station.
Serpa to Porto train services, operated by Comboios de Portugal, arrive at Casa Branca station.
Yes, the driving distance between Serpa to Porto is 472 km. It takes approximately 4h 52m to drive from Serpa to Porto.
Book your Serpa to Porto train tickets online with Omio.
Book your Serpa to Porto bus tickets online with Omio.
There are 6822+ hotels available in Porto.















