The average train between Beja and Olhão takes 6h 21m and the fastest train takes 5h 1m. The train service runs several times per day from Beja to Olhão. 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 4 times a day between Beja and Olhão. The earliest departure is at 6:18 AM in the morning, and the last departure from Beja is at 6:20 PM which arrives into Olhão at 12:06 PM. All services require a transfer at Casa Branca and take an average of 6h 21m. The schedules shown below are for the next available departures.



5h 48m • 3 changes


5h 43m • 3 changes


7h 25m • 3 changes


5h 1m • 3 changesWant to know about travelling from Beja to Olhão? 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 Olhão. However, there are services departing from Beja station and arriving at Olhão station via Casa Branca. The journey, including transfers, takes approximately 6h 21m.
Beja to Olhão train services, operated by Comboios de Portugal, depart from Beja station.
Beja to Olhão train services, operated by Comboios de Portugal, arrive at Faro station.
Book your Beja to Olhão train tickets online with Comboios de Portugal.
The distance between Beja and Olhão is 109.7 km. The road distance is 403 km.
You can take a train from Beja to Olhao via Casa Branca, Pinhal Novo, and Faro in around 6h 21m.