There are 4 ways to get from Badulla to Ratmalana by bus, train, or car
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus via Hali-Ela
best- Take the bus from Hali-Ela to Colombo Bastian Mawatha Bus Terminalbus Badulla-Colombo / ...
7h 33mRs 2,833–3,548Bus
cheapest- Take the bus from Badulla Main Bus Station to Colombo Bastian Mawatha Bus Terminalbus Route 99
7h 44mRs 2,015–5,610Train
- Take the train from Badulla Station to Fort Stationtrain Badulla
11h 23mRs 2,479–6,097Drive 206.2 km
- Drive from Badulla to Ratmalanacar 206.2 km
3h 22mRs 9,278–13,402
Badulla to Ratmalana by train
Comparing Your Travel Options
The cheapest way to get from Badulla to Ratmalana is to bus via Hali-Ela which costs Rs. 2800 - Rs. 3600 and takes 7h 33m.
The fastest way to get from Badulla to Ratmalana is to drive which takes 3h 22m and costs Rs. 9000 - Rs. 14000.
No, there is no direct bus from Badulla to Ratmalana. However, there are services departing from Hali-Ela and arriving at Ratmalana via Pettah. The journey, including transfers, takes approximately 7h 33m.
No, there is no direct train from Badulla station to Ratmalana. However, there are services departing from Badulla Station and arriving at Ratmalana via Fort Station. The journey, including transfers, takes approximately 11h 23m.
The distance between Badulla and Ratmalana is 253 km. The road distance is 206.2 km.
The best way to get from Badulla to Ratmalana without a car is to bus via Hali-Ela which takes 7h 33m and costs Rs. 2800 - Rs. 3600.
It takes approximately 7h 33m to get from Badulla to Ratmalana, including transfers.
Badulla to Ratmalana bus services, operated by Superline Travels, depart from Hali-Ela station.
Badulla to Ratmalana train services, operated by Sri Lanka Railways, depart from Badulla Station.
The best way to get from Badulla to Ratmalana is to bus via Hali-Ela which takes 7h 33m and costs Rs. 2800 - Rs. 3600. Alternatively, you can train, which costs Rs. 2400 - Rs. 6500 and takes 11h 23m.
What companies run services between Badulla, Sri Lanka and Ratmalana, Sri Lanka?
Superline Travels operates a bus from Hali-Ela to Colombo Bastian Mawatha Bus Terminal twice daily. Tickets cost Rs 2,200–2,800 and the journey takes 5h 42m. Alternatively, Sri Lanka Railways operates a train from Badulla Station to Fort Station 3 times a day. Tickets cost Rs 1,300–3,200 and the journey takes 10h 1m.
- Phone
- +94 114 600 111
- Website
- Sri Lanka Railways
Train from Badulla Station to Fort Station
- Ave. Duration
- 10h 1m
- 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,400–1,700
- Air Conditioned Saloon
- Rs 2,500–3,200
- Phone
- +94 777 382 186
- [email protected]
- Website
- Superline Travels
Bus from Hali-Ela to Colombo Bastian Mawatha Bus Terminal
- Ave. Duration
- 5h 42m
- Frequency
- Twice daily
- Estimated price
- Rs 2,200–2,800
- Website
- Superline Travels
Bus from Badulla Main Bus Station to Colombo Bastian Mawatha Bus Terminal
- Ave. Duration
- 5h 50m
- 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 How to get from Heathrow Airport into central London, The London Underground: Essential tips to navigate the Tube, and Need to know: Greyhound - to help you get the most out of your next trip.
Booking & Getting There
Badulla to Ratmalana bus services, operated by Superline Travels, arrive at Colombo Bastian Mawatha Bus Terminal station.
Badulla to Ratmalana train services, operated by Sri Lanka Railways, arrive at Fort Station.
Yes, the driving distance between Badulla to Ratmalana is 206 km. It takes approximately 3h 22m to drive from Badulla to Ratmalana.
There are 1375+ hotels available in Ratmalana.







