The calculated distance (air line) between Belém and Porto is approximately 172 miles respectively 277 kilometers.
By car or train, the actual journey to Porto is certainly longer, as only the direct route (as the crow flies) between Belém and Porto has been calculated here.