Distance from Salisbury to St Andrews

The distance from Salisbury to St Andrews is 297 km (or 185 mi). The estimated driving time for the trip is 3h 22min and the main road for this route is the A1. In a straight line, the distance between Salisbury and St Andrews is 172 km (107 mi).