There are 6 ways to get from Porto to Badajoz by train, bus, 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.
Train
best- Take the train from Porto Campanha to Entroncamentotrain Ic / ...
- Take the train from Entroncamento to Badajoztrain Re
6h 1m€41–69Bus
cheapest- Take the bus from Porto - Terminal Intermodal de Campanhã to Estação Rodoviária de Lisboa Orientebus 53 | Braga / ...
- Take the bus from Estação Rodoviária de Lisboa Oriente to Badajozbus
7h 34m€37–96Drive 355.9 km
- Drive from Porto to Badajozcar 355.9 km
4h 13m€59–85Fly to Lisbon-Portela Airport, bus
- Fly from Francisco De Sá Carneiro Airport (OPO) to Lisbon-Portela Airport (LIS)plane OPO - LIS
- Take the bus from Estação Rodoviária de Lisboa Oriente to Badajozbus
6h 31m€64–170Bus via Montemor-o-Novo
- Take the bus from Porto to Montemor-o-Novobus N1016
- Take the bus from Montemor-o-Novo to Badajozbus 1040
9h 10m€51–75Fly to Badajoz Airport
- Fly from Francisco De Sá Carneiro Airport (OPO) to Badajoz Airport (BJZ)plane OPO - BJZ
8h 7m€244–754
Porto to Badajoz by train
Comparing Your Travel Options
The cheapest way to get from Porto to Badajoz is to train which costs €40 - €70 and takes 6h 1m.
The fastest way to get from Porto to Badajoz is to drive which takes 4h 13m and costs €55 - €85.
No, there is no direct bus from Porto to Badajoz. However, there are services departing from Porto - Terminal Intermodal de Campanhã and arriving at Badajoz via Estação Rodoviária de Lisboa Oriente. The journey, including transfers, takes approximately 7h 34m.
No, there is no direct train from Porto to Badajoz. However, there are services departing from Porto Campanha and arriving at Badajoz via Entroncamento. The journey, including transfers, takes approximately 6h 1m.
The distance between Porto and Badajoz is 404 km. The road distance is 355.9 km.
The best way to get from Porto to Badajoz without a car is to train which takes 6h 1m and costs €40 - €70.
It takes approximately 6h 1m to get from Porto to Badajoz, including transfers.
Porto to Badajoz bus services, operated by Rede Expressos, depart from Porto - Terminal Intermodal de Campanhã station.
Porto to Badajoz train services, operated by Comboios de Portugal, depart from Porto Campanha station.
The best way to get from Porto to Badajoz is to train which takes 6h 1m and costs €40 - €70. Alternatively, you can bus, which costs €35 - €100 and takes 7h 34m, you could also fly, which costs €240 - €800 and takes 8h 7m.
What companies run services between Porto, Portugal and Badajoz, Spain?
You can take a train from Porto Campanha to Badajoz via Entroncamento in around 6h 1m. Alternatively, you can take a bus from Porto - Terminal Intermodal de Campanhã to Badajoz via Estação Rodoviária de Lisboa Oriente in around 7h 34m.
- Website
- flytap.com
Flights from Francisco De Sá Carneiro Airport to Lisbon-Portela Airport
- Ave. Duration
- 1h
- When
- Every day
- Estimated price
- €45–100
- Website
- iberia.com
Flights from Francisco De Sá Carneiro Airport to Badajoz Airport via Barcelona
- Ave. Duration
- 4h 37m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €130–550
Flights from Francisco De Sá Carneiro Airport to Badajoz Airport via Madrid
- Ave. Duration
- 4h 55m
- When
- Monday, Tuesday, Wednesday, Thursday, Friday, and Sunday
- Estimated price
- €95–600
- Phone
- +351 210 900 032
- Website
- Comboios de Portugal
Train from Porto Campanha to Entroncamento
- Ave. Duration
- 2h 13m
- Frequency
- Every 3 hours
- Estimated price
- €23–40
- Website
- Comboios de Portugal
Train from Entroncamento to Badajoz
- Ave. Duration
- 2h 48m
- Frequency
- Twice daily
- Estimated price
- €17–30
- Website
- Comboios de Portugal
- Phone
- +351 21 75 24 524
- Website
- Rede Expressos
Bus from Porto - Terminal Intermodal de Campanhã to Estação Rodoviária de Lisboa Oriente
- Ave. Duration
- 3h 35m
- Frequency
- Every 4 hours
- Estimated price
- €20–40
- Website
- Rede Expressos
Bus from Estação Rodoviária de Lisboa Oriente to Badajoz
- Ave. Duration
- 2h 59m
- Frequency
- Once daily
- Estimated price
- €16–28
- Website
- Rede Expressos
Bus from Estação Rodoviária de Lisboa Oriente to Badajoz
- Ave. Duration
- 2h 59m
- Frequency
- Once daily
- Estimated price
- €16–28
- Website
- Rede Expressos
- Phone
- +34 910 207 007
- Website
- alsa.es
Bus from Estação Rodoviária de Lisboa Oriente to Badajoz
- Ave. Duration
- 2h 59m
- Frequency
- Once daily
- Estimated price
- €20–60
- Schedules at
- alsa.es
Bus from Estação Rodoviária de Lisboa Oriente to Badajoz
- Ave. Duration
- 2h 59m
- Frequency
- Once daily
- Estimated price
- €20–60
- Schedules at
- alsa.es
- Phone
- +49 30 300 137 300
- [email protected]
- Website
- Flixbus
Bus from Porto to Montemor-o-Novo
- Ave. Duration
- 5h 45m
- Frequency
- Once daily
- Estimated price
- €35–60
- Website
- Flixbus
Bus from Montemor-o-Novo to Badajoz
- Ave. Duration
- 2h 25m
- Frequency
- 5 times a week
- Estimated price
- €12–18
- Website
- Flixbus
Want to know more about travelling around Spain
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
Porto to Badajoz bus services, operated by Rede Expressos, arrive at Estação Rodoviária de Lisboa Oriente station.
Badajoz is 1h ahead of Porto. It is currently 1:56 AM in Porto and 2:56 AM in Badajoz.
Porto to Badajoz train services, operated by Comboios de Portugal, arrive at Entroncamento station.
Yes, the driving distance between Porto to Badajoz is 356 km. It takes approximately 4h 13m to drive from Porto to Badajoz.
Book your Porto to Badajoz train tickets online with Omio.
Book your Porto to Badajoz bus tickets online with Omio.
There are 181+ hotels available in Badajoz.
















