The average train between Harlech and Swansea takes 8h 30m and the fastest train takes 6h 14m. The train service runs several times per day from Harlech to Swansea. 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 Swansea. The earliest departure is at 7:17 AM in the morning, and the last departure from Harlech is at 9:28 PM which arrives into Swansea at 11:40 AM. All services require a transfer at Machynlleth and take an average of 8h 30m. The schedules shown below are for the next available departures.
Arrives next day


13h 44m • 2 changesArrives next day


14h 12m • 2 changes

6h 21m • 2 changes

7h 17m • 2 changes

7h 11m • 2 changes

7h 10m • 2 changes

6h 21m • 2 changes

7h 17m • 2 changes

7h 11m • 2 changes

7h 10m • 2 changes

6h 21m • 2 changes

7h 17m • 2 changes

7h 11m • 2 changes

7h 9m • 2 changes

6h 22m • 2 changes

7h 18m • 2 changes

7h 7m • 2 changes

7h 12m • 2 changes

6h 30m • 2 changes

6h 43m • 2 changes

6h 15m • 2 changes

6h 15m • 2 changes

6h 21m • 2 changes

7h 17m • 2 changes

7h 11m • 2 changes

7h 10m • 2 changesWant to know about travelling from Harlech to Swansea? 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 Swansea. However, there are services departing from Harlech station and arriving at Swansea station via Machynlleth. The journey, including transfers, takes approximately 8h 30m.
Harlech to Swansea train services, operated by Transport for Wales, depart from Harlech station.
Harlech to Swansea train services, operated by Transport for Wales, arrive at Swansea station.
Book your Harlech to Swansea train tickets online with Transport for Wales.
The distance between Harlech and Swansea is 138.1 km. The road distance is 349 km.
You can take a train from Harlech to Swansea via Machynlleth and Shrewsbury in around 8h 35m.