The average bus between Beja and Silves takes 7h 1m and the fastest bus takes 3h. The bus service runs several times per day from Beja to Silves. 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 Beja and Silves. The earliest departure is at 10:20 AM in the morning, and the last departure from Beja is at 6:30 PM which arrives into Silves at 8:00 AM. All services require a transfer, and take on average 7h 1m. The schedules shown below are for the next available departures.

4h 55m • 1 change

3h • 1 change
Arrives next day

13h 30m • 1 change

4h 55m • 1 change

3h • 1 change
Arrives next day

13h 30m • 1 change

4h 55m • 1 change

3h • 1 change
Arrives next day

13h 30m • 1 change

4h 55m • 1 change

3h • 1 change
Arrives next day

14h 15m • 1 change

4h 55m • 1 change

4h 15m • 1 change
Arrives next day

14h 15m • 1 change
Want to know about travelling from Beja to Silves? 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 Beja to Silves. However, there are services departing from Beja station and arriving at Silves station via Terminal Rodoviário de Albufeira. The journey, including transfers, takes approximately 7h 1m.
Beja to Silves bus services, operated by Rede Expressos, depart from Terminal Rodoviário de Beja station.
Beja to Silves bus services, operated by Rede Expressos, arrive at Silves - Bombeiros station.
Book your Beja to Silves bus tickets online with Rede Expressos and VAMUS - Transportes do Algarve.
The distance between Beja and Silves is 104.9 km. The road distance is 157 km.
You can take a bus from Terminal Rodoviário de Beja to Silves - Bombeiros via Terminal Rodoviário de Albufeira in around 3h 25m.