The average train between Harlech and Edinburgh takes 9h 34m and the fastest train takes 7h 50m. The train service runs several times per day from Harlech to Edinburgh. 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 every 4 hours between Harlech and Edinburgh. The earliest departure is at 8:21 AM in the morning, and the last departure from Harlech is at 9:19 PM which arrives into Edinburgh at 4:20 PM. All services require a transfer at Machynlleth and take an average of 9h 34m. The schedules shown below are for the next available departures.



7h 52m • 3 changes
Arrives next day



9h 16m • 3 changes
Arrives next day



15h • 3 changes



7h 57m • 3 changes



7h 50m • 3 changes



7h 55m • 3 changes



7h 52m • 3 changes



7h 57m • 3 changes



7h 50m • 3 changes



7h 55m • 3 changes



7h 52m • 3 changes



7h 57m • 3 changes



7h 50m • 3 changes



7h 55m • 3 changes



7h 52m • 3 changes



7h 57m • 3 changes



7h 50m • 3 changes



7h 55m • 3 changes



7h 52m • 3 changes



7h 57m • 3 changes



7h 51m • 3 changes



7h 54m • 3 changes



7h 53m • 3 changes
Want to know about travelling from Harlech to Edinburgh? 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 Harlech to Edinburgh. However, there are services departing from Harlech station and arriving at Edinburgh station via Machynlleth. The journey, including transfers, takes approximately 9h 34m.
Harlech to Edinburgh train services, operated by Transport for Wales, depart from Harlech station.
Harlech to Edinburgh train services, operated by Transport for Wales, arrive at Edinburgh Waverley station.
Book your Harlech to Edinburgh train tickets online with Transport for Wales, Avanti West Coast and Caledonian Sleeper.
The distance between Harlech and Edinburgh is 349 km. The road distance is 594 km.
You can take a train from Harlech to Edinburgh Waverley via Machynlleth, Shrewsbury, and Crewe in around 9h 15m.