Polonnaruwa’s main bus station is in Kaduruwela, 4km east of Old Town on Batticaloa Rd. Buses to and from the west pass through Old Town, but to make sure you get a seat, start at Kaduruwela.
Buses run every 30 minutes or so until about 4pm on main routes, which include the following:
Anuradhapura Rs 145, three hours
Colombo Rs 265, six hours
Dambulla Rs 77, 1½ hours; take a Kandy, Kurunegala or Colombo bus
Kandy Rs 75, three hours
Polonnaruwa is on the Colombo–Batticaloa railway line and is about 30km southeast of Gal Oya, where the line splits from the Colombo–Trincomalee line. The train station is in Kaduruwela.
Trains include the following:
Batticaloa 2nd/3rd class Rs 150/85, 2½ hours, five daily
Colombo 1st/2nd/3rd class Rs 700/340/185, six to seven hours, two daily, including one sleeper (Rs 1250/630/480) leaving at 10.25pm