The calculated distance (air line) between Shaftesbury and Swansea is approximately 87 miles respectively 140 kilometers.
By car or train, the actual journey to Swansea is certainly longer, as only the direct route (as the crow flies) between Shaftesbury and Swansea has been calculated here.
Air line (approximately)
140 kilometers
75 nautical miles