There are 6 ways to get from Almada to Porto by train, bus, car, ferry, plane, or rideshare
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Train
best- Take the train from Lisboa - Santa Apolonia to Porto Campanhatrain Ic
2h 48m€30–55Ferry, rideshare
cheapest- Take the ferry from Cacilhas to Estação Fluvial do Cais do Sodréferry Cacilhas
- Take the rideshare from Lisbon to Porto
5h 9m€13–25Bus
- Take the bus from Estação Rodoviária de Sete Rios to Porto - Terminal Intermodal de Campanhãbus Lisboa / ...
4h 32m€22–43Drive 321.8 km
- Drive from Almada to Portocar 321.8 km
3h 12m€59–85Ferry, fly
- Take the ferry from Cacilhas to Estação Fluvial do Cais do Sodréferry
- Fly from Lisbon-Portela Airport (LIS) to Francisco De Sá Carneiro Airport (OPO)plane LIS - OPO
3h 44m€52–116Ferry, bus
- Take the ferry from Cacilhas to Estação Fluvial do Cais do Sodréferry Cacilhas
- Take the bus from Lisbon to Portobus 1000 / ...
4h 59m€31–45
Almada to Porto by train
Comparing Your Travel Options
The cheapest way to get from Almada to Porto is to ferry and rideshare which costs €13 - €25 and takes 5h 9m.
The fastest way to get from Almada to Porto is to train which takes 2h 48m and costs €30 - €55.
No, there is no direct bus from Almada to Porto. However, there are services departing from Pragal and arriving at Porto - Terminal Intermodal de Campanhã via Estação Rodoviária de Sete Rios. The journey, including transfers, takes approximately 4h 32m.
Yes, there is a direct train departing from Lisboa - Santa Apolonia and arriving at Porto Campanha. Services depart hourly, and operate every day. The journey takes approximately 2h 48m.
The distance between Almada and Porto is 336 km. The road distance is 321.8 km.
The best way to get from Almada to Porto without a car is to train which takes 2h 48m and costs €30 - €55.
The train from Lisboa - Santa Apolonia to Porto Campanha takes 2h 48m including transfers and departs hourly.
Almada to Porto bus services, operated by Rede Expressos, depart from Estação Rodoviária de Sete Rios station.
Almada to Porto train services, operated by Comboios de Portugal, depart from Lisboa - Santa Apolonia station.
The best way to get from Almada to Porto is to train which takes 2h 48m and costs €30 - €55. Alternatively, you can bus, which costs €22 - €45 and takes 4h 32m.
What companies run services between Almada, Portugal and Porto, Portugal?
Comboios de Portugal operates a train from Lisboa - Santa Apolonia to Porto Campanha hourly. Tickets cost €30–55 and the journey takes 2h 48m. Alternatively, Rede Expressos operates a bus from Estação Rodoviária de Sete Rios to Porto - Terminal Intermodal de Campanhã hourly. Tickets cost €20–40 and the journey takes 3h 30m.
- Website
- flytap.com
Flights from Lisbon-Portela Airport to Francisco De Sá Carneiro Airport
- Ave. Duration
- 1h
- When
- Every day
- Estimated price
- €45–100
- Phone
- +351 210 900 032
- Website
- Comboios de Portugal
Train from Lisboa - Santa Apolonia to Porto Campanha
- Ave. Duration
- 2h 48m
- Frequency
- Hourly
- Estimated price
- €30–55
- Website
- Comboios de Portugal
- Phone
- +351 21 75 24 524
- Website
- Rede Expressos
Bus from Estação Rodoviária de Sete Rios to Porto - Terminal Intermodal de Campanhã
- Ave. Duration
- 3h 30m
- Frequency
- Hourly
- Estimated price
- €20–40
- Website
- Rede Expressos
- Phone
- +49 30 300 137 300
- service@flixbus.com
- Website
- Flixbus
Bus from Lisbon to Porto
- Ave. Duration
- 3h 15m
- Frequency
- Every 20 minutes
- Estimated price
- €27–40
- Website
- Flixbus
- Phone
- +351 808 20 30 50
- apoio.cliente@ttsl.pt
- Website
- ttsl.pt
Ferry from Cacilhas to Estação Fluvial do Cais do Sodré
- Ave. Duration
- 30 min
- Frequency
- Every 20 minutes
- Estimated price
- €1–2
- Schedules at
- ttsl.pt
Ferry from Cacilhas to Estação Fluvial do Cais do Sodré
- Ave. Duration
- 30 min
- Frequency
- Every 20 minutes
- Estimated price
- €1–2
- Schedules at
- ttsl.pt
Ferry from Cacilhas to Estação Fluvial do Cais do Sodré
- Ave. Duration
- 30 min
- Frequency
- Every 20 minutes
- Estimated price
- €1–2
- Schedules at
- ttsl.pt
- Phone
- +3 318 576 2228
- Website
- BlaBlaCar
Rideshare from Lisbon to Porto
- Ave. Duration
- 3h 30m
- Frequency
- Hourly
- Estimated price
- €12–23
- Schedules at
- BlaBlaCar
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
Booking & Getting There
Almada to Porto bus services, operated by Rede Expressos, arrive at Porto - Terminal Intermodal de Campanhã station.
Almada to Porto train services, operated by Comboios de Portugal, arrive at Porto Campanha station.
Yes, the driving distance between Almada to Porto is 322 km. It takes approximately 3h 12m to drive from Almada to Porto.
Book your Almada to Porto train tickets online with Omio and 12go.asia.
Book your Almada to Porto bus tickets online with Omio.
There are 6681+ hotels available in Porto.



















