Rome2Rio

How to get fromBadulla to Diyatalawaby bus, train, car or taxi

Find Transport to Diyatalawa

See all options

There are 4 ways to get from Badulla to Diyatalawa 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 Badulla Main Bus Station to DiyatalawabusRoute 99
    1h 4m
  2. Train

    cheapest
    1. Take the train from Badulla Station to DiyatalawatrainBadulla
    1h 44m
    Rs 1,200–2,600
  3. Drive 36.4 km

    1. Drive from Badulla to Diyatalawacar36.4 km
    37 min
    Rs 1,532–2,213
  4. Taxi

    1. Take the taxi from Badulla to Diyatalawataxi36.4 km
    37 min
    Rs 4,600–6,000

Badulla to Diyatalawa by train

Calendar29Weekly Trains
Duration1h 44mAverage Duration
TicketRs 1,200Cheapest Price
See schedules

Questions & Answers

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

Sri Lanka Transport Board - SLTB ICT operates a bus from Badulla Main Bus Station to Diyatalawa every 4 hours, and the journey takes 1h 4m. Alternatively, Sri Lanka Railways operates a train from Badulla Station to Diyatalawa 4 times a day. Tickets cost Rs 1,200–2,600 and the journey takes 1h 44m.

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 Italian Lakes: Getting around by train, Bali: What to do if Mount Agung erupts, and How to get from Southend Airport into central London - to help you get the most out of your next trip.

More Questions & Answers