Distance from Cardiff to Portsmouth

The distance from Cardiff to Portsmouth by car is 238 km (or 148 mi). The estimated driving time for the trip is 2 h 30 min and the main road for this route is the M4. In a straight line, the distance between Cardiff and Portsmouth is 167 km (104 mi).