There are 4 ways to get from Badulla to Haputale 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 Badulla Main Bus Station to Haputalebus Badulla-Colombo / ...
56 minRs 2,100–2,300Train
cheapest- Take the train from Badulla Station to Haputaletrain Badulla
1h 54mRs 1,200–2,600Drive 41.4 km
- Drive from Badulla to Haputalecar 41.4 km
43 minRs 1,739–2,512Taxi
- Take the taxi from Badulla to Haputaletaxi 41.4 km
43 minRs 5,000–6,500
Badulla to Haputale by train
Questions & Answers
The cheapest way to get from Badulla to Haputale is to train which costs Rs. 1200 - Rs. 2600 and takes 1h 54m.
The fastest way to get from Badulla to Haputale is to drive which takes 43 min and costs Rs. 1700 - Rs. 2600.
Yes, there is a direct bus departing from Badulla Main Bus Station station and arriving at Haputale. Services depart twice daily, and operate every day. The journey takes approximately 56 min.
Yes, there is a direct train departing from Badulla Station station and arriving at Haputale. Services depart four times a day, and operate every day. The journey takes approximately 1h 54m.
The distance between Badulla and Haputale is 43 km. The road distance is 41.4 km.
The best way to get from Badulla to Haputale without a car is to bus which takes 56 min and costs Rs. 2100 - Rs. 2300.
The bus from Badulla Main Bus Station to Haputale takes 56 min including transfers and departs twice daily.
Badulla to Haputale bus services, operated by Superline Travels, depart from Badulla Main Bus Station.
Badulla to Haputale train services, operated by Sri Lanka Railways, depart from Badulla Station.
The best way to get from Badulla to Haputale is to bus which takes 56 min and costs Rs. 2100 - Rs. 2300. Alternatively, you can train, which costs Rs. 1200 - Rs. 2600 and takes 1h 54m.
What companies run services between Badulla, Sri Lanka and Haputale, Uva, Sri Lanka?
Superline Travels operates a bus from Badulla Main Bus Station to Haputale twice daily. Tickets cost Rs 2,100–2,300 and the journey takes 56 min. Alternatively, Sri Lanka Railways operates a train from Badulla Station to Haputale 4 times a day. Tickets cost Rs 1,200–2,600 and the journey takes 1h 54m.
- Phone
- +94 11 4 600 111
- Website
- seatreservation.railway.gov.lk
Train from Badulla Station to Haputale
- Ave. Duration
- 1h 54m
- Frequency
- 4 times a day
- Estimated price
- Rs 1,200–2,600
- Website
- https://seatreservation.railway.gov.lk/mtktwebslr/
- 2nd Class Fare
- Rs 1,300–1,900
- 3rd Class Fare
- Rs 1,200–1,500
- Air Conditioned Saloon
- Rs 1,300–2,600
- Phone
- +94 777 382 186
- info@superline.lk
- Website
- superline.lk
Bus from Badulla Main Bus Station to Haputale
- Ave. Duration
- 56 min
- Frequency
- Twice daily
- Estimated price
- Rs 2,100–2,300
- Website
- https://superline.lk/
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 Italy Travel Guides, Train travel in Spain: A guide to Renfe, and How to get from Gatwick Airport into central London - to help you get the most out of your next trip.
More Questions & Answers
Badulla to Haputale bus services, operated by Superline Travels, arrive at Haputale station.
Badulla to Haputale train services, operated by Sri Lanka Railways, arrive at Haputale station.
Yes, the driving distance between Badulla to Haputale is 41 km. It takes approximately 43 min to drive from Badulla to Haputale.
There are 1315+ hotels available in Haputale.








