How to get from Colombo to Nuwara Eliya?
The best way to travel the 165km journey from Colombo to Nuwara Eliya is by train, which takes 6 hours and 15 min and costs 420 Rs ($2.30). Alternative options include taking a bus (5.5 hours) or taking a taxi (4.5 hours).
We highly recommend travelling this journey via train, because this route is among the most scenic in Sri Lanka. However, notice that all trains go via Kandy. As you will pass the city anyway, we recommend to visit Kandy before visiting Nuwara Eliya.
Trains in the Tea Country are mostly clean and comfortable so your 6.5-hour journey will literally be a breeze. Fares start at 420 Rs ($2.30) for unreserved 2nd class seats. Reserved seats are much more expensive and should be booked online a month before your travel date, but we recommend them if you don’t want to risk standing for the first few hours of your train journey.
Another alternative to travel from Colombo to Nuwara Eliya is to take the local bus for 545 Rs ($3) or the tourist bus for 1,620 Rs ($9). Travel time is more or less 5 hours.
Traveling with a group? Consider taking a taxi, with rates starting at 14,900 Rs ($82). With a taxi, you can travel door-to-door and maybe even ask the driver to make impromptu stopovers.
Schedule from Colombo to Nuwara Eliya
|Train||6h 15m||420 Rs ($2.30) or|
3,090 Rs ($17)
|Check train tickets|
|Bus||5h||545 Rs ($3) or 1,620 Rs ($9)||Check bus tickets|
|Taxi||4h 30m||14,900 Rs ($82) or 23,700 Rs ($130)||Book a taxi|
Colombo to Nuwara Eliya by Train
Duration: 6h 15min
Costs: 420 Rs ($2.30)
Taking the train from Colombo to Nuwara Eliya might take a bit longer than the bus or car, but the scenic views make it all worth it.
Luckily, it’s a nice way to travel like a local and enjoy the scenic views of landscapes and villages you will pass by during the train journey.
Keep in mind that you have to reserve your seats with Sri Lanka Railways, at least one month before your travel date when booking online. Air-conditioned first-class seats cost 5,180 Rs ($28.50) and non-aircon second-class seats cost 3,090 Rs ($17).
Reserved or unreserved seats?
Tickets for an unreserved 3rd class seat from Colombo to Nuwara Eliya are a lot cheaper and only cost 420 Rs ($2.30) and 275 Rs ($1.50) for 2nd and 3rd class seats.
These tickets are unlimited and you can easily buy them at the train station on the day of your trip. Check out Sri Lanka Railways website to see the schedules for 2nd and 3rd class seats.
Note though that while unreserved tickets are unlimited, the seats are not!
You will have to fight your way to get a seat at the crowded unreserved cabins. And if you think you got one, there is a chance that locals will do their best effort to claim the seat from you.
That means standing in a crowded train for around 3 hours until you reach Kandy, where many passengers get off.
Instead of risking your supposedly scenic train ride, we suggest to book reserved tickets via a local agency when you are too late to book online. Some of them can get you reserved train tickets even a few days before your trip.
For more info and other booking options, visit our page on How to Book Train Tickets in Sri Lanka.
Where can I find the railway stations?
Trains depart from Fort Railway Station in Colombo city center and arrive at Nanu Oya Railway Station, west of Nuwara Eliya city center.
From Nanu Oya, you have the option to take either a tuk-tuk or a bus to the city center. This trip to the center takes around 20 minutes and you can find the tuk-tuks outside of the station for rates starting at 500 Rs ($2.75).
If you want to take the bus, you will have to walk about 50m to the bus stop, where buses pass every 20 to 30 minutes.
Train schedules of Sri Lanka Railways from Colombo to Kandy
|5,180 Rs ($28.50)|
|3,090 Rs ($17)|
*Notice that train tickets are also sold on 12Go.Asia for a few dollars less than BookAway. However, we recommend booking with BookAway as they don’t add a booking fee, time schedules & info are more reliable and they offer very good customer support.
Colombo to Nuwara Eliya by Bus
Duration: 4.5 to 5.5 hours
Costs: 1,620 Rs ($9) or 545 Rs ($3)
When taking the bus from Colombo to Nuwara Eliya, you have 2 options: taking the local bus or a more comfortable tourist bus.
We recommend to take the tourist bus as local buses pick-up and drop-off passengers along the way. The local bus to Nuawara Eliya will therefore take about 1 hour longer.
Colombo to Nuwara Eliya by Tourist Bus
Duration: 4.5 hours
Costs: 1,620 Rs ($9)
Taking a tourist bus cost a few dollars more but will save you an hour in travel time. In addition, this are more comfortable and cleaner buses.
Le Ceylan offers 3 daily trips from Bastian Mawatha Bus Station in Colombo city center to Nuwara Eliya Main Bus Station, which is also in the city center.
See here the bus schedule of Le Ceylan:
|Tourist Bus (Le Ceylan)||10:30-15:00|
|4h 30m||1,620 Rs ($9)|
Colombo to Nuwara Eliya by Local Bus
Duration: 5.5 hours
Costs: 545 Rs ($3)
If you are on a tight budget, you can also book an air-conditioned local bus for 545 Rs ($3).
Local buses are easily available to almost any destination from Colombo. Bus route #79 will take you to Nuwara Eliya in around 5.5 hours, depending on traffic.
We recommend to take an air-conditioned bus for this journey to make it a little more comfortable. Ordinary and semi-luxury buses are also available for 272 Rs ($1.5) and 408 Rs ($2.30) respectively, but these can get crowded and very uncomfortable for long journeys.
Bus route #79 departs from Colombo Central Bus Stand in the city center and arrives at Nuwara Eliya Main Bus Station, which is also in the city center.
Colombo to Nuwara Eliya by Taxi
Duration: 4.5 hours
Costs: 14,900 Rs ($82)
When travelling with a group, you can also take a taxi from Colombo to Nuwara Eliya. This gives you the advantage of travelling door-to-door, without the need to worry about train or bus schedules.
PRO-TIP; Use the code “hpam1ue” or this link to order your first ride with Uber for free!
We are sorry that this post was not useful for you!
Let us improve this post!
Tell us how we can improve this post?