The average train between Musselburgh and Dunbar takes 49 min and the fastest train takes 32 min. There is a train service every few hours from Musselburgh to Dunbar. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Trains run hourly between Musselburgh and Dunbar. The earliest departure is at 6:28 AM in the morning, and the last departure from Musselburgh is at 10:49 PM which arrives into Dunbar at 11:37 PM. All services require a transfer, and take on average 49 min. The schedules shown below are for the next available departures.

34 min • 1 change

1h 4m • 1 change

32 min • 1 change
Arrives next day

7h 23m • 1 change

55 min • 1 change

46 min • 1 change

47 min • 1 change

46 min • 1 change

55 min • 1 change

46 min • 1 change

47 min • 1 change

46 min • 1 change

55 min • 1 change

46 min • 1 change

47 min • 1 change

46 min • 1 change
Want to know about travelling from Musselburgh to Dunbar? We have put together a list of the most frequently asked questions from our users such as: What is the cheapest mode of transport? What is the quickest option? How much do tickets usually cost? and many more.
No, there is no direct train from Musselburgh to Dunbar. However, there are services departing from Musselburgh station and arriving at Dunbar station via Edinburgh Waverley. The journey, including transfers, takes approximately 49 min.
Musselburgh to Dunbar train services, operated by ScotRail, depart from Musselburgh station.
Musselburgh to Dunbar train services, operated by ScotRail, arrive at Dunbar station.
Book your Musselburgh to Dunbar train tickets online with ScotRail, London North Eastern Railway Limited (LNER) and 2 other operators.
The distance between Musselburgh and Dunbar is 33.9 km. The road distance is 54 km.
You can take a train from Musselburgh to Dunbar via Edinburgh Waverley in around 1h 1m.