There are 4 ways to get from Badulla to Peradeniya by bus, train, car, or taxi
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus
best- Take the bus from Ella to Peradeniyabus
6hRs 2,730–3,562Train
cheapest- Take the train from Badulla Station to Peradeniyatrain Badulla
7h 2mRs 1,300–3,100Drive 118 km
- Drive from Badulla to Peradeniyacar 118 km
2h 10mRs 5,305–7,662Taxi
- Take the taxi from Badulla to Peradeniyataxi 118 km
2h 10mRs 8,000–10,000
Badulla to Peradeniya by train
Comparing Your Travel Options
The cheapest way to get from Badulla to Peradeniya is to train which costs Rs. 1300 - Rs. 3100 and takes 7h 2m.
The fastest way to get from Badulla to Peradeniya is to drive which takes 2h 10m and costs Rs. 5000 - Rs. 8000.
No, there is no direct bus from Badulla station to Peradeniya. However, there are services departing from Badulla Main Bus Station and arriving at Peradeniya via Ella. The journey, including transfers, takes approximately 6h.
Yes, there is a direct train departing from Badulla Station station and arriving at Peradeniya. Services depart twice daily, and operate every day. The journey takes approximately 7h 2m.
The distance between Badulla and Peradeniya is 146 km. The road distance is 118 km.
The best way to get from Badulla to Peradeniya without a car is to bus which takes 6h and costs Rs. 2700 - Rs. 3600.
It takes approximately 6h to get from Badulla to Peradeniya, including transfers.
Badulla to Peradeniya bus services, operated by National Transport Commission, depart from Ella station.
Badulla to Peradeniya train services, operated by Sri Lanka Railways, depart from Badulla Station.
The best way to get from Badulla to Peradeniya is to bus which takes 6h and costs Rs. 2700 - Rs. 3600. Alternatively, you can train, which costs Rs. 1300 - Rs. 3100 and takes 7h 2m.
What companies run services between Badulla, Sri Lanka and Peradeniya, Sri Lanka?
National Transport Commission operates a bus from Ella to Peradeniya twice daily. Tickets cost Rs 430–1,050 and the journey takes 4h 30m. Alternatively, Sri Lanka Railways operates a train from Badulla Station to Peradeniya twice daily. Tickets cost Rs 1,300–3,100 and the journey takes 7h 2m.
- Phone
- +94 114 600 111
- Website
- Sri Lanka Railways
Train from Badulla Station to Peradeniya
- Ave. Duration
- 7h 2m
- Frequency
- Twice daily
- Estimated price
- Rs 1,300–3,100
- Website
- Sri Lanka Railways
- 2nd Class Fare
- Rs 1,300–1,900
- 3rd Class Fare
- Rs 1,300–1,600
- Air Conditioned Saloon
- Rs 2,400–3,100
- Phone
- +94 011-2587372
- [email protected]
- Website
- National Transport Commission
Bus from Ella to Peradeniya
- Ave. Duration
- 4h 30m
- Frequency
- Twice daily
- Estimated price
- Rs 430–1,050
- Website
- National Transport Commission
- Schedules at
- NTC Schedules
- Standard
- Rs 430–480
- Semi Lux
- Rs 500–750
- Super Lux
- Rs 950–1,300
- Seater
- Rs 1,020–1,050
Want to know more about travelling around the world?
Rome2Rio's Travel Guide series provide vital information for the global traveller. Read our range of informative guides on popular transport routes and companies - including How to get from London to Edinburgh, 4 stunningly beautiful Philippines islands you need to visit, and How to get from Heathrow Airport into central London - to help you get the most out of your next trip.
Booking & Getting There
Badulla to Peradeniya bus services, operated by National Transport Commission, arrive at Peradeniya station.
Badulla to Peradeniya train services, operated by Sri Lanka Railways, arrive at Peradeniya station.
Yes, the driving distance between Badulla to Peradeniya is 118 km. It takes approximately 2h 10m to drive from Badulla to Peradeniya.
There are 1542+ hotels available in Peradeniya.









