The average train between Machynlleth and Knighton takes 3h 43m and the fastest train takes 2h 11m. The train service runs several times per day from Machynlleth to Knighton. 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 4 times a day between Machynlleth and Knighton. The earliest departure is at 7:05 AM in the morning, and the last departure from Machynlleth is at 8:11 PM which arrives into Knighton at 6:43 AM. All services require a transfer, and take on average 3h 43m. The schedules shown below are for the next available departures.

2h 42m • 1 change

3h 15m • 1 change
Arrives next day

9h 6m • 1 change

2h 18m • 1 change

2h 11m • 1 change

2h 42m • 1 change

3h 15m • 1 change

2h 18m • 1 change

2h 11m • 1 change

2h 42m • 1 change

3h 15m • 1 change

2h 18m • 1 change

2h 11m • 1 change

2h 42m • 1 change

3h 15m • 1 change

2h 18m • 1 change

2h 11m • 1 change

2h 42m • 1 change

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