The average bus between Badajoz and Porto takes 7h 1m and the fastest bus takes 5h 55m. The bus service runs several times per day from Badajoz to Porto. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run 3 times a day between Badajoz and Porto. The earliest departure is at 5:50 AM in the morning, and the last departure from Badajoz is at 9:45 PM which arrives into Porto at 4:10 AM. All services require a transfer at Lisbon - Oriente and take an average of 7h 1m. The schedules shown below are for the next available departures.

4h 55m • 1 change

7h 20m • 1 change
Arrives next day

7h 35m • 1 change

4h 55m • 1 change

7h 20m • 1 change
Arrives next day

7h 35m • 1 change

4h 55m • 1 change

7h 20m • 1 change
Arrives next day

6h 25m • 1 change
Want to know about travelling from Badajoz to Porto? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct bus from Badajoz to Porto. However, there are services departing from Badajoz station and arriving at Porto station via Lisbon - Oriente. The journey, including transfers, takes approximately 7h 1m.
Badajoz to Porto bus services, operated by FlixBus, depart from Badajoz station.
Badajoz to Porto bus services, operated by FlixBus, arrive at Porto station.
Book your Badajoz to Porto bus tickets online with FlixBus and BlaBlaCar Bus.
The distance between Badajoz and Porto is 288.6 km. The road distance is 552 km.
You can take a bus from Badajoz to Porto via Lisbon - Oriente and Lisbon in around 5h 58m.