The average train between Musselburgh and Linlithgow takes 38 min and the fastest train takes 28 min. There is an hourly train service from Musselburgh to Linlithgow. 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 Linlithgow. 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 Linlithgow at 11:24 PM. All services require a transfer, and take on average 38 min. The schedules shown below are for the next available departures.

47 min • 1 change

41 min • 1 change

41 min • 1 change

33 min • 1 change

35 min • 1 change

28 min • 1 change

38 min • 1 change

45 min • 1 change

35 min • 1 change

28 min • 1 change

38 min • 1 change

45 min • 1 change
Want to know about travelling from Musselburgh to Linlithgow? 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 Linlithgow. However, there are services departing from Musselburgh station and arriving at Linlithgow station via Edinburgh Waverley. The journey, including transfers, takes approximately 38 min.
Musselburgh to Linlithgow train services, operated by ScotRail, depart from Musselburgh station.
Musselburgh to Linlithgow train services, operated by ScotRail, arrive at Linlithgow station.
Book your Musselburgh to Linlithgow train tickets online with ScotRail.
The distance between Musselburgh and Linlithgow is 34.5 km. The road distance is 36 km.
You can take a train from Musselburgh to Linlithgow via Edinburgh Waverley in around 38 min.