There are 4 ways to get from Badulla to Veyangoda 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.
Bus
best- Take the bus from Badulla Main Bus Station to Colombo Bastian Mawatha Bus Terminalbus Route 99
8h 3mRs 2,115–5,610Train
cheapest- Take the train from Badulla Station to Veyangodatrain Badulla
9h 13mRs 1,300–3,200Drive 183.9 km
- Drive from Badulla to Veyangodacar 183.9 km
3h 15mRs 8,360–12,076Taxi
- Take the taxi from Badulla to Veyangodataxi 183.9 km
3h 15mRs 9,000–11,000
Badulla to Veyangoda by train
Questions & Answers
The cheapest way to get from Badulla to Veyangoda is to train which costs Rs. 1300 - Rs. 3200 and takes 9h 13m.
The fastest way to get from Badulla to Veyangoda is to drive which takes 3h 15m and costs Rs. 8000 - Rs. 13000.
No, there is no direct bus from Badulla station to Veyangoda. However, there are services departing from Badulla Main Bus Station and arriving at Colombo Bastian Mawatha Bus Terminal via . The journey, including transfers, takes approximately 8h 3m.
Yes, there is a direct train departing from Badulla Station station and arriving at Veyangoda. Services depart twice daily, and operate every day. The journey takes approximately 9h 13m.
The distance between Badulla and Veyangoda is 257 km. The road distance is 183.9 km.
The best way to get from Badulla to Veyangoda without a car is to bus which takes 8h 3m and costs Rs. 2100 - Rs. 6000.
It takes approximately 8h 3m to get from Badulla to Veyangoda, including transfers.
Badulla to Veyangoda bus services, operated by Sri Lanka Transport Board - SLTB ICT, depart from Badulla Main Bus Station.
Badulla to Veyangoda train services, operated by Sri Lanka Railways, depart from Badulla Station.
The best way to get from Badulla to Veyangoda is to bus which takes 8h 3m and costs Rs. 2100 - Rs. 6000. Alternatively, you can train, which costs Rs. 1300 - Rs. 3200 and takes 9h 13m.
What companies run services between Badulla, Sri Lanka and Veyangoda, Sri Lanka?
Sri Lanka Transport Board - SLTB ICT operates a bus from Badulla Main Bus Station to Colombo Bastian Mawatha Bus Terminal every 4 hours. Tickets cost Rs 900–1,300 and the journey takes 6h 15m. Superline Travels also services this route twice daily. Alternatively, Sri Lanka Railways operates a train from Badulla Station to Veyangoda twice daily. Tickets cost Rs 1,300–3,200 and the journey takes 9h 13m.
- Phone
- +94 114 600 111
- Website
- seatreservation.railway.gov.lk
Train from Badulla Station to Veyangoda
- Ave. Duration
- 9h 13m
- Frequency
- Twice daily
- Estimated price
- Rs 1,300–3,200
- Website
- https://seatreservation.railway.gov.lk/mtktwebslr/
- 2nd Class Fare
- Rs 1,300–1,900
- 3rd Class Fare
- Rs 1,300–1,700
- Air Conditioned Saloon
- Rs 2,400–3,200
- Phone
- +94 70 311 0501
- [email protected]
- Website
- sltb.eseat.lk
Bus from Badulla Main Bus Station to Colombo Bastian Mawatha Bus Terminal
- Ave. Duration
- 6h 15m
- Frequency
- Every 4 hours
- Estimated price
- Rs 900–1,300
- Schedules at
- sltb.eseat.lk
- Seater
- Rs 900–1,300
- Phone
- +94 777 382 186
- [email protected]
- Website
- superline.lk
Bus from Badulla Main Bus Station to Colombo Bastian Mawatha Bus Terminal
- Ave. Duration
- 5h 50m
- Frequency
- Twice daily
- Estimated price
- Rs 2,200–2,800
- Website
- https://superline.lk/
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 The London Underground: Essential tips to navigate the Tube, What are the different types of Renfe trains in Spain?, and How to get from Luton Airport into central London - to help you get the most out of your next trip.
More Questions & Answers
Badulla to Veyangoda bus services, operated by Sri Lanka Transport Board - SLTB ICT, arrive at Colombo Bastian Mawatha Bus Terminal station.
Badulla to Veyangoda train services, operated by Sri Lanka Railways, arrive at Veyangoda station.
Yes, the driving distance between Badulla to Veyangoda is 184 km. It takes approximately 3h 15m to drive from Badulla to Veyangoda.
There are 575+ hotels available in Veyangoda.









