The calculated distance (air line) between Grahamstown and Middelburg is approximately 154 miles respectively 247 kilometers.
By car or train, the actual journey to Middelburg is certainly longer, as only the direct route (as the crow flies) between Grahamstown and Middelburg has been calculated here.
Air line (approximately)
247 kilometers
133 nautical miles