The calculated distance (air line) between Gabane and Johannesburg is approximately 177 miles respectively 284 kilometers.
By car or train, the actual journey to Johannesburg is certainly longer, as only the direct route (as the crow flies) between Gabane and Johannesburg has been calculated here.
Air line (approximately)
284 kilometers
153 nautical miles