The average train between Musselburgh and London takes 4h 54m and the fastest train takes 4h 18m. There is a train service every few hours from Musselburgh to London. 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 London. 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 London at 9:47 AM. All services require a transfer, and take on average 4h 54m. The schedules shown below are for the next available departures.

4h 22m • 1 change

4h 25m • 1 change

4h 41m • 1 change

4h 19m • 1 change

4h 38m • 1 change

4h 53m • 1 change

4h 30m • 1 change

4h 40m • 1 change

4h 38m • 1 change

4h 53m • 1 change

4h 30m • 1 change

4h 40m • 1 change
Want to know about travelling from Musselburgh to London? 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 London. However, there are services departing from Musselburgh station and arriving at London station via King's Cross. The journey, including transfers, takes approximately 4h 54m.
Musselburgh to London train services, operated by ScotRail, depart from Edinburgh Waverley station.
Musselburgh to London train services, operated by ScotRail, arrive at King's Cross station.
Book your Musselburgh to London train tickets online with ScotRail and London North Eastern Railway Limited (LNER).
The distance between Musselburgh and London is 529.1 km. The road distance is 636 km.
London North Eastern Railway Limited (LNER) operates a train from Edinburgh Waverley to King's Cross hourly. Tickets cost £110–170 and the journey takes 4h 8m.