There are 6 ways to get from Colombo to Badulla 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.

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

National Transport Commission operates a bus from Colombo to Badulla hourly. Tickets cost $1 - $3 and the journey takes 7 h 30 min. Alternatively, Sri Lanka Railways operates a train from Colombo to Badulla 3 times a day. Tickets cost $1 - $6 and the journey takes 9 h 32 min.

Airlines
SriLankan Airlines
Website
srilankan.com
Flights from Diyawanna Oya to Katugastota
Avg. Duration
30 min
When
Every day
Estimated price
$180 - $290
Flights from Diyawanna Oya to Hatton
Avg. Duration
30 min
When
Every day
Estimated price
$250 - $360
Cinnamon Air
Website
cinnamonair.com
Flights from Diyawanna Oya to Katugastota
Avg. Duration
30 min
When
Every day
Estimated price
$13 - $140
Flights from Diyawanna Oya to Hatton
Avg. Duration
30 min
When
Every day
Estimated price
$18 - $190
Train operators
Sri Lanka Railways
Website
railway.gov.lk
Train from Colombo Fort to Badulla
Avg. Duration
9 h 32 min
Frequency
3 times a day
Estimated price
$1 - $6
Schedules at
eservices.railway.gov.lk
3rd Class
$1 - $2
2nd Class
$1 - $3
1st Class
$4 - $6
Bus operators
National Transport Commission
Phone
+94 011-2587372
Email
info@ntc.gov.lk
Website
ntc.gov.lk
Bus from Pettah CTB to Badulla
Avg. Duration
7 h 30 min
Frequency
Hourly
Estimated price
$1 - $3
Schedules at
ntc.gov.lk
Standard
$1 - $3
Semi Lux
$2 - $4
AirCon
$3 - $4
Super Lux
$6
Other operators
Taxi
Avg. Duration
3 h 39 min
Estimated price
$90 - $110
Colombo Taxi
Phone
+94 11 43 43 475
Website
colombotaxicabs.com

Want to know more about travelling around the world?

Rome2rio's unique Travel Guides provide useful and timely information for the global traveller. Read our range of informative guides on popular transport routes and companies - including How to get from London to Edinburgh, Travelling Croatia’s Dalmatian Coast by boat, bus, car and train and Is ride-sharing platform BlaBlaCar right for you? - to help you get the most out of your next trip.

Questions & Answers

How far is it from Colombo to Badulla?

The distance between Colombo and Badulla is 133 km. The road distance is 223 km.

What is the cheapest way to get from Colombo to Badulla?

The cheapest way to get from Colombo to Badulla is to bus which costs Rs. 470 and takes 7 h 30 min.

What is the fastest way to get from Colombo to Badulla?

The quickest way to get from Colombo to Badulla is to fly and taxi which takes 2 h 32 min and costs Rs. 26000.

Is there a direct train between Colombo and Badulla?

Yes, there is a direct train departing from Colombo Fort and arriving at Badulla. Services depart three times a day, and operate every day. The journey takes approximately 9 h 32 min.

Is there a direct bus between Colombo and Badulla?

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

How long does it take to get from Colombo to Badulla?

The bus from Pettah CTB to Badulla takes 7 h 30 min including transfers and departs hourly.