Mahabalipuram is 60 km south of Chennai on the East Coast Road (ECR). By bus, regular services run from Chennai's Thiruvanmiyur bus terminus (about 90 minutes). Several private bus operators also run Chennai-to-Mahabalipuram day-trip routes. By hired car or taxi from Chennai the drive takes 60-90 minutes depending on traffic.
There is no train station in Mahabalipuram. The nearest railhead is Chengalpattu (about 25 km inland), from which you can take a local bus or auto-rickshaw to the coast.
From Pondicherry, Mahabalipuram is 95 km north along the same ECR. Buses run regularly between the two towns; the journey takes about 2 hours.