Rome2Rio

How to get fromDiyatalawa to Kandyby bus, train, car, or taxi

Find Transport to Kandy

See all options

There are 4 ways to get from Diyatalawa to Kandy 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.

  1. Bus

    best
    1. Take the bus from Welimada to Kandybus bus
    4h 9m
    Rs 2,661–3,581
  2. Train

    cheapest
    1. Take the train from Diyatalawa to Kandytrain train Badulla / ...
    5h 31m
    Rs 1,200–3,000
  3. Drive  116.4 km

    1. Drive from Diyatalawa to Kandycar car 116.4 km
    2h 9m
    Rs 5,236–7,563
  4. Taxi

    1. Take the taxi from Diyatalawa to Kandytaxi taxi 116.4 km
    2h 9m
    Rs 14,000–18,000

Diyatalawa to Kandy by train

Calendar22Weekly Trains
Duration5h 31mAverage Duration
TicketRs 1,200Cheapest Price
See schedules

Comparing Your Travel Options

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

National Transport Commission operates a bus from Welimada to Kandy twice daily. Tickets cost Rs 350–840 and the journey takes 3h 45m. Alternatively, Sri Lanka Railways operates a train from Diyatalawa to Kandy 3 times a day. Tickets cost Rs 1,200–3,000 and the journey takes 5h 31m.

Train operators
Bus operators
Other operators

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 4 of the smartest ways to explore Australia, Need to know: Greyhound, and Why you should take the train in the US - to help you get the most out of your next trip.

Booking & Getting There