The calculated distance (air line) between General Santos and Cotabato is approximately 100 miles respectively 160 kilometers.
By car or train, the actual journey to Cotabato is certainly longer, as only the direct route (as the crow flies) between General Santos and Cotabato has been calculated here.
Air line (approximately)
160 kilometers
87 nautical miles