The average train between Beja and Porto takes 6h 3m and the fastest train takes 5h 25m. The train service runs several times per day from Beja 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.
Trains run 3 times a day between Beja and Porto. The earliest departure is at 6:23 AM in the morning, and the last departure from Beja is at 6:15 PM which arrives into Porto at 1:13 AM. All services require a transfer at Casa Branca and take an average of 6h 3m. The schedules shown below are for the next available departures.


5h 25m • 2 changes


6h 3m • 2 changes


5h 37m • 2 changes
Arrives next day


6h 58m • 2 changes


5h 25m • 2 changes


6h 3m • 2 changes


5h 37m • 2 changes
Arrives next day


6h 58m • 2 changes


5h 25m • 2 changes


6h 3m • 2 changes


5h 37m • 2 changes
Arrives next day


6h 58m • 2 changes
Want to know about travelling from Beja 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 train from Beja to Porto. However, there are services departing from Beja station and arriving at Porto station via Casa Branca. The journey, including transfers, takes approximately 6h 3m.
Beja to Porto train services, operated by Comboios de Portugal, depart from Beja station.
Beja to Porto train services, operated by Comboios de Portugal, arrive at Porto Campanha station.
Book your Beja to Porto train tickets online with Comboios de Portugal.
The distance between Beja and Porto is 354.4 km. The road distance is 515 km.
You can take a train from Beja to Porto Campanha via Casa Branca and Lisboa Oriente in around 6h 10m.