The calculated distance (air line) between São João and Guimarães is approximately 43 miles respectively 69 kilometers.
By car or train, the actual journey to Guimarães is certainly longer, as only the direct route (as the crow flies) between São João and Guimarães has been calculated here.