The calculated distance (air line) between Foz do Sousa and Guimarães is approximately 26 miles respectively 42 kilometers.
By car or train, the actual journey to Guimarães is certainly longer, as only the direct route (as the crow flies) between Foz do Sousa and Guimarães has been calculated here.
Air line (approximately)
42 kilometers
23 nautical miles