The calculated distance (air line) between San Gil and Villavicencio is approximately 170 miles respectively 274 kilometers.
By car or train, the actual journey to Villavicencio is certainly longer, as only the direct route (as the crow flies) between San Gil and Villavicencio has been calculated here.
Air line (approximately)
274 kilometers
148 nautical miles