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