There are 4 ways to get from Colombo to Diyatalawa by plane, taxi, 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.
Fly, taxi
best- Fly from Bandaranaike International Airport (CMB) to Hatton (NUF)plane CMB - NUF
- Take the taxi from Hatton (NUF) to Diyatalawataxi
2h 37mRs 31,975–153,607Bus
cheapest- Take the bus from Colombo Bastian Mawatha Bus Terminal to Diyatalawabus Route 99
5h 10mRs 900–1,300Train
- Take the train from Fort Station to Diyatalawatrain Colombo
7h 45mRs 1,300–3,200Drive 184.9 km
- Drive from Colombo to Diyatalawacar 184.9 km
3hRs 8,352–12,064
Colombo to Diyatalawa by train
Questions & Answers
The cheapest way to get from Colombo to Diyatalawa is to bus which costs Rs. 900 - Rs. 1300 and takes 5h 10m.
The fastest way to get from Colombo to Diyatalawa is to fly and taxi which takes 2h 37m and costs Rs. 32000 - Rs. 160000.
Yes, there is a direct bus departing from Colombo Bastian Mawatha Bus Terminal and arriving at Diyatalawa. Services depart every four hours, and operate every day. The journey takes approximately 5h 10m.
Yes, there is a direct train departing from Fort Station station and arriving at Diyatalawa. Services depart three times a day, and operate every day. The journey takes approximately 7h 45m.
The distance between Colombo and Diyatalawa is 198 km. The road distance is 184.9 km.
The best way to get from Colombo to Diyatalawa without a car is to bus which takes 5h 10m and costs Rs. 900 - Rs. 1300.
It takes approximately 2h 37m to get from Colombo to Diyatalawa, including transfers.
Colombo to Diyatalawa bus services, operated by Sri Lanka Transport Board - SLTB ICT, depart from Colombo Bastian Mawatha Bus Terminal station.
Colombo to Diyatalawa train services, operated by Sri Lanka Railways, depart from Fort Station.
The best way to get from Colombo to Diyatalawa is to bus which takes 5h 10m and costs Rs. 900 - Rs. 1300. Alternatively, you can train, which costs Rs. 1300 - Rs. 3200 and takes 7h 45m.
What companies run services between Colombo, Sri Lanka and Diyatalawa, Uva, Sri Lanka?
Sri Lanka Transport Board - SLTB ICT operates a bus from Colombo Bastian Mawatha Bus Terminal to Diyatalawa every 4 hours. Tickets cost Rs 900–1,300 and the journey takes 5h 10m. Alternatively, Sri Lanka Railways operates a train from Fort Station to Diyatalawa 3 times a day. Tickets cost Rs 1,300–3,200 and the journey takes 7h 45m.
- Website
- cinnamonair.com
Flights from Bandaranaike International Airport to Hatton
- Ave. Duration
- 30 min
- When
- Every day
- Estimated price
- Rs 13,000–130,000
- Phone
- +94 114 600 111
- Website
- seatreservation.railway.gov.lk
Train from Fort Station to Diyatalawa
- Ave. Duration
- 7h 45m
- Frequency
- 3 times a day
- Estimated price
- Rs 1,300–3,200
- Website
- https://seatreservation.railway.gov.lk/mtktwebslr/
- 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 70 311 0501
- info@eseat.lk
- Website
- sltb.eseat.lk
Bus from Colombo Bastian Mawatha Bus Terminal to Diyatalawa
- Ave. Duration
- 5h 10m
- Frequency
- Every 4 hours
- Estimated price
- Rs 900–1,300
- Schedules at
- sltb.eseat.lk
- Seater
- Rs 900–1,300
- Ave. Duration
- 1h 41m
- Estimated price
- Rs 10,000–13,000
Randidu Cabs and Tours
- Phone
- +94 72 35 77 277
- Website
- business.facebook.com
Pickme
- Phone
- +94117433433
- Website
- pickme.lk
Nuwara Eliya Taxi
- Phone
- +94 72 27 02 600
- Website
- nuwaraeliyataxi.wixsite.com
Minipura Taxi
- Phone
- +94 11 45 22 64 264
- Website
- facebook.com
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 JFK to New York City, What are the different types of Renfe trains in Spain?, and The beginner’s guide to the 2018 World Nomad Games - to help you get the most out of your next trip.
More Questions & Answers
Colombo to Diyatalawa bus services, operated by Sri Lanka Transport Board - SLTB ICT, arrive at Diyatalawa station.
Colombo to Diyatalawa train services, operated by Sri Lanka Railways, arrive at Diyatalawa station.
Yes, the driving distance between Colombo to Diyatalawa is 185 km. It takes approximately 3h to drive from Colombo to Diyatalawa.
There are 1531+ hotels available in Diyatalawa.








