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