The average train between Colombo and Diyatalawa takes 8h 14m and the fastest train takes 7h 45m. The train service runs several times per day from Colombo to Diyatalawa. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run 3 times a day between Colombo and Diyatalawa. The earliest departure is at 5:55 AM in the morning, and the last departure from Colombo is at 9:45 AM which arrives into Diyatalawa at 5:44 PM. All services run direct with no transfers required, and take on average 8h 14m. The schedules shown below are for the next available departures.
Want to know about travelling from Colombo to Diyatalawa? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
Yes, there is a direct train departing from Colombo station and arriving at Diyatalawa station. Services depart 3 times a day, and operate Once daily. The journey takes approximately 8h 14m.
Colombo to Diyatalawa train services, operated by Sri Lanka Railways, depart from Fort Station.
Colombo to Diyatalawa train services, operated by Sri Lanka Railways, arrive at Diyatalawa station.
The distance between Colombo and Diyatalawa is 123.2 km. The road distance is 262 km.
Sri Lanka Railways operates a train from Fort Station to Diyatalawa 3 times a day. Tickets cost Rs 1,300–8,500 and the journey takes 7h 45m.