There are 4 ways to get from Puliyankulama Town to Badulla 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 Omanthai to Pettahbus
- Take the bus from Colombo Bastian Mawatha Bus Terminal to Badulla Main Bus Stationbus Route 99
13h 40mRs 4,243–7,796Train
cheapest- Take the train from Puniyankulam to Polgahawela Junctiontrain Kankesanthurai to Mt Lavinia / ...
- Take the train from Polgahawela to Badulla Stationtrain Colombo
14h 9mRs 2,652–6,285Drive 276.9 km
- Drive from Puliyankulama Town to Badullacar 276.9 km
5h 3mRs 11,843–17,106Taxi
- Take the taxi from Puliyankulama Town to Badullataxi 276.9 km
5h 3mRs 13,000–17,000
Puliyankulama Town to Badulla by train
Comparing Your Travel Options
The cheapest way to get from Puliyankulama Town to Badulla is to train which costs Rs. 2600 - Rs. 6500 and takes 14h 9m.
The fastest way to get from Puliyankulama Town to Badulla is to drive which takes 5h 3m and costs Rs. 11000 - Rs. 18000.
No, there is no direct bus from Puliyankulama Town to Badulla station. However, there are services departing from Omanthai and arriving at Badulla Main Bus Station via Colombo Bastian Mawatha Bus Terminal. The journey, including transfers, takes approximately 13h 40m.
No, there is no direct train from Puliyankulama Town to Badulla station. However, there are services departing from Puniyankulam and arriving at Badulla Station via Polgahawela. The journey, including transfers, takes approximately 14h 9m.
The distance between Puliyankulama Town and Badulla is 516 km. The road distance is 276.9 km.
The best way to get from Puliyankulama Town to Badulla without a car is to bus which takes 13h 40m and costs Rs. 4200 - Rs. 8000.
It takes approximately 13h 40m to get from Puliyankulama Town to Badulla, including transfers.
Puliyankulama Town to Badulla bus services, operated by NCG Express, depart from Omanthai station.
Puliyankulama Town to Badulla train services, operated by Sri Lanka Railways, depart from Puniyankulam station.
The best way to get from Puliyankulama Town to Badulla is to bus which takes 13h 40m and costs Rs. 4200 - Rs. 8000. Alternatively, you can train, which costs Rs. 2600 - Rs. 6500 and takes 14h 9m.
What companies run services between Puliyankulama Town, Northern Province, Sri Lanka and Badulla, Sri Lanka?
You can take a train from Puniyankulam to Badulla Main Bus Station via Omanthai, Omanthai, Pettah, and Colombo Bastian Mawatha Bus Terminal in around 13h 40m. Alternatively, you can take a train from Puniyankulam to Badulla Station via Polgahawela in around 14h 9m.
- Phone
- +94 114 600 111
- Website
- Sri Lanka Railways
Train from Puniyankulam to Polgahawela Junction
- Ave. Duration
- 5h 3m
- Frequency
- Once 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
Train from Polgahawela to Badulla Station
- Ave. Duration
- 8h 6m
- Frequency
- 3 times a day
- Estimated price
- Rs 1,300–3,200
- Website
- Sri Lanka Railways
- 2nd Class Fare
- Rs 1,300–1,900
- 3rd Class Fare
- Rs 1,300–1,700
- Air Conditioned Saloon
- Rs 2,400–3,200
- Phone
- +94 76 714 8292
- [email protected]
- Website
- ncgexpress.lk
Bus from Omanthai to Pettah
- Ave. Duration
- 4h 55m
- Frequency
- Twice daily
- Estimated price
- Rs 2,167
- Schedules at
- NCG Express Facebook
- Phone
- +94 70 311 0501
- [email protected]
- Website
- sltb.eseat.lk
Bus from Colombo Bastian Mawatha Bus Terminal to Badulla Main Bus Station
- Ave. Duration
- 6h 15m
- Frequency
- Every 4 hours
- Estimated price
- Rs 900–1,300
- Schedules at
- sltb.eseat.lk
- Seater
- Rs 900–1,300
- Phone
- +94 777 382 186
- [email protected]
- Website
- Superline Travels
Bus from Colombo Bastian Mawatha Bus Terminal to Badulla Main Bus Station
- Ave. Duration
- 6h
- Frequency
- Twice daily
- Estimated price
- Rs 2,200–2,800
- Website
- Superline Travels
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 5 delightfully under-the-radar French towns you need to visit, 4 stunningly beautiful Philippines islands you need to visit, and How do I buy a London Underground ticket? - to help you get the most out of your next trip.
Booking & Getting There
Puliyankulama Town to Badulla bus services, operated by NCG Express, arrive at Pettah station.
Puliyankulama Town to Badulla train services, operated by Sri Lanka Railways, arrive at Polgahawela Junction station.
Yes, the driving distance between Puliyankulama Town to Badulla is 277 km. It takes approximately 5h 3m to drive from Puliyankulama Town to Badulla.
There are 1229+ hotels available in Badulla.












