• Our partners include:

  • Booking.com
  • Skyscanner
  • Airbnb
  • Expedia
  • Uber
  • Rentalcars.com

There are 6 ways to get from Colombo to Diyatalawa by bus, train, taxi, car or plane

Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2rio's travel planner.

Recommended option

Bus  •  6 h 26 min

  1. Take the bus from Pettah CTB to Diyatalawa 99 / ...

$1 - $3

5 alternative options

Train  •  8 h 33 min

  1. Take the train from Colombo Fort to Diyatalawa Express Train

$1 - $5

Taxi  •  3 h 4 min

  1. Take a taxi from Colombo to Diyatalawa 119 miles

$55 - $70

Drive  •  3 h 4 min

  1. Drive from Colombo to Diyatalawa 119 miles

$14 - $21

Fly to Hatton, taxi  •  2 h 23 min

  1. Fly from Diyawanna Oya (DWO) to Hatton (NUF) DWO - NUF
  2. Take a taxi from Hatton to Diyatalawa

$48 - $226

Fly to Katugastota, taxi  •  2 h 58 min

  1. Fly from Diyawanna Oya (DWO) to Katugastota (KDZ) DWO - KDZ
  2. Take a taxi from Katugastota to Diyatalawa

$66 - $204

Questions & Answers

The cheapest way to get from Colombo to Diyatalawa is to bus which costs Rs. 220 - Rs. 470 and takes 6 h 26 min.

More details

The quickest way to get from Colombo to Diyatalawa is to fly and taxi which costs Rs. 8000 - Rs. 39000 and takes 2 h 23 min.

More details

Yes, there is a direct bus departing from Pettah CTB and arriving at Diyatalawa. Services depart hourly, and operate every day. The journey takes approximately 6 h 26 min.

More details

Yes, there is a direct train departing from Colombo Fort and arriving at Diyatalawa. Services depart four times a day, and operate every day. The journey takes approximately 8 h 33 min.

More details

The distance between Colombo and Diyatalawa is 123 km. The road distance is 190.5 km.

Get driving directions

The best way to get from Colombo to Diyatalawa without a car is to bus which takes 6 h 26 min and costs Rs. 220 - Rs. 470.

More details

The bus from Pettah CTB to Diyatalawa takes 6 h 26 min including transfers and departs hourly.

More details

Colombo to Diyatalawa bus services, operated by National Transport Commission, depart from Pettah CTB station.

More details

Colombo to Diyatalawa train services, operated by Sri Lanka Railways, depart from Colombo Fort station.

More details

The best way to get from Colombo to Diyatalawa is to bus which takes 6 h 26 min and costs Rs. 220 - Rs. 470. Alternatively, you can train, which costs Rs. 240 - Rs. 800 and takes 8 h 33 min.

Mode details

Map of how to get from Colombo to Diyatalawa.
Launch map view
  • Distance: 77 miles
  • Duration: 6 h 26 min

What companies run services between Colombo, Sri Lanka and Diyatalawa, Uva, Sri Lanka?

National Transport Commission operates a bus from Colombo to Diyatalawa hourly. Tickets cost $1 - $3 and the journey takes 6 h 26 min. Alternatively, Sri Lanka Railways operates a train from Colombo to Diyatalawa 4 times a day. Tickets cost $1 - $5 and the journey takes 8 h 33 min.

Airlines
Cinnamon Air
Website
cinnamonair.com
Flights from Diyawanna Oya to Hatton
Ave. Duration
30 min
When
Every day
Estimated price
$18 - $190
Flights from Diyawanna Oya to Katugastota
Ave. Duration
30 min
When
Every day
Estimated price
$13 - $140
SriLankan Airlines
Website
srilankan.com
Flights from Diyawanna Oya to Hatton
Ave. Duration
30 min
When
Every day
Estimated price
$250 - $360
Flights from Diyawanna Oya to Katugastota
Ave. Duration
30 min
When
Every day
Estimated price
$180 - $290
Train operators
Sri Lanka Railways
Website
railway.gov.lk
Train from Colombo Fort to Diyatalawa
Ave. Duration
8 h 33 min
Frequency
4 times a day
Estimated price
$1 - $5
Schedules at
eservices.railway.gov.lk
3rd Class
$1 - $2
2nd Class
$1 - $3
1st Class
$3 - $5
Bus operators
National Transport Commission
Phone
+94 011-2587372
Email
info@ntc.gov.lk
Website
ntc.gov.lk
Bus from Pettah CTB to Diyatalawa
Ave. Duration
6 h 26 min
Frequency
Hourly
Estimated price
$1 - $3
Schedules at
ntc.gov.lk
Standard
$1 - $2
Semi Lux
$2 - $3
AirCon
$2 - $3
Super Lux
$5
Other operators
Taxi from Colombo to Diyatalawa
Ave. Duration
3 h 4 min
Estimated price
$55 - $70
Colombo Taxi
Phone
+94 11 43 43 475
Website
colombotaxicabs.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 Which side of Niagara Falls should I choose (and how do I get there)?, How to get from Stansted Airport into central London and Need to know: Jadrolinija - to help you get the most out of your next trip.

More Questions & Answers

The quickest flight from Diyawanna Oya Airport to Hatton Airport is the direct flight which takes 30 min.

Search flights

Colombo to Diyatalawa bus services, operated by National Transport Commission, arrive at Diyatalawa station.

More details

Colombo to Diyatalawa train services, operated by Sri Lanka Railways, arrive at Diyatalawa station.

More details

Yes, the driving distance between Colombo to Diyatalawa is 190 km. It takes approximately 3 h 4 min to drive from Colombo to Diyatalawa.

Get driving directions

Cinnamon Air and SriLankan Airlines offer flights from Diyawanna Oya Airport to Hatton Airport.

Search flights

There are 874+ hotels available in Diyatalawa. Prices start at $16 USD per night.

More details

The best way to get from Colombo to Diyawanna Oya Airport is to taxi which takes 10 min and costs Rs. 550 - Rs. 700.

More details