Rome2Rio

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

Find Transport to Kegalle

See all options

There are 4 ways to get from Badulla to Kegalle by bus, taxi, 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.

  1. Bus, taxi

    best
    1. Take the bus from Badulla Main Bus Station to Avissawellabus bus Badulla-Colombo
    2. Take the taxi from Avissawella to Kegalletaxi taxi
    5h 8m
    Rs 4,760–5,754
  2. Train

    cheapest
    1. Take the train from Badulla Station to Rambukkanatrain train Badulla
    8h 40m
    Rs 2,152–4,084
  3. Drive  146.2 km

    1. Drive from Badulla to Kegallecar car 146.2 km
    2h 48m
    Rs 6,570–9,490
  4. Taxi

    1. Take the taxi from Badulla to Kegalletaxi taxi 146.2 km
    2h 48m
    Rs 7,000–9,000

Comparing Your Travel Options

What companies run services between Badulla, Sri Lanka and Kegalle, Sri Lanka?

Sri Lanka Railways operates a train from Badulla Station to Rambukkana twice daily. Tickets cost Rs 1,300–3,100 and the journey takes 8h 26m.

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 Which London airport should I choose?, How to get from JFK to New York City, and Travelling to and around Russia for the 2018 FIFA World Cup - to help you get the most out of your next trip.