The calculated distance (air line) between Swindon and Amesbury is approximately 26 miles respectively 43 kilometers.
By car or train, the actual journey to Amesbury is certainly longer, as only the direct route (as the crow flies) between Swindon and Amesbury has been calculated here.