The average train between Machynlleth and Cardiff takes 3h 38m and the fastest train takes 3h 14m. There is a train service every few hours from Machynlleth to Cardiff. 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 2 hours between Machynlleth and Cardiff. The earliest departure is at 5:54 AM in the morning, and the last departure from Machynlleth is at 8:11 PM which arrives into Cardiff at 12:18 AM. All services require a transfer, and take on average 3h 38m. The schedules shown below are for the next available departures.

3h 36m • 1 change

3h 38m • 1 change

3h 34m • 1 change

3h 35m • 1 change

3h 22m • 1 change

3h 42m • 1 change

3h 31m • 1 change

3h 37m • 1 change

3h 22m • 1 change

3h 42m • 1 change

3h 31m • 1 change

3h 37m • 1 change

3h 22m • 1 change

3h 42m • 1 change

3h 31m • 1 change

3h 37m • 1 change

3h 22m • 1 change

3h 42m • 1 change

3h 31m • 1 change

3h 37m • 1 change
Want to know about travelling from Machynlleth to Cardiff? 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 Machynlleth to Cardiff. However, there are services departing from Machynlleth station and arriving at Cardiff station via Shrewsbury. The journey, including transfers, takes approximately 3h 38m.
Machynlleth to Cardiff train services, operated by Transport for Wales, depart from Machynlleth station.
Machynlleth to Cardiff train services, operated by Transport for Wales, arrive at Cardiff Central station.
Book your Machynlleth to Cardiff train tickets online with Transport for Wales.
The distance between Machynlleth and Cardiff is 131.8 km. The road distance is 267 km.
You can take a train from Machynlleth to Cardiff Central via Shrewsbury in around 3h 39m.