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