The calculated distance (air line) between Dundee and Perth is approximately 18 miles respectively 29 kilometers.
By car or train, the actual journey to Perth is certainly longer, as only the direct route (as the crow flies) between Dundee and Perth has been calculated here.