The average train between Oxford and Porthmadog takes 7h 48m and the fastest train takes 5h 35m. The train service runs several times per day from Oxford to Porthmadog. 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 Oxford and Porthmadog. The earliest departure is at 7:12 AM in the morning, and the last departure from Oxford is at 9:39 PM which arrives into Porthmadog at 10:49 AM. All services require a transfer at Birmingham New Street and take an average of 7h 48m. The schedules shown below are for the next available departures.
Arrives next day


13h 37m • 2 changes
Arrives next day


13h 10m • 2 changes


5h 38m • 2 changes


5h 43m • 2 changes


5h 38m • 2 changes


5h 43m • 2 changes


6h 6m • 2 changes


6h 14m • 2 changes


6h 3m • 2 changes
Arrives next day


13h 40m • 2 changes


5h 35m • 2 changes


5h 40m • 2 changes


5h 39m • 2 changes


5h 44m • 2 changes


5h 35m • 2 changes


5h 40m • 2 changes


5h 39m • 2 changes


5h 44m • 2 changes


5h 35m • 2 changes


5h 40m • 2 changes


5h 39m • 2 changes


5h 44m • 2 changes


5h 35m • 2 changes


5h 40m • 2 changes


5h 39m • 2 changes


5h 44m • 2 changes
Want to know about travelling from Oxford to Porthmadog? 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 Oxford to Porthmadog. However, there are services departing from Oxford station and arriving at Porthmadog station via Birmingham New Street. The journey, including transfers, takes approximately 7h 48m.
Oxford to Porthmadog train services, operated by Cross Country, depart from Oxford station.
Oxford to Porthmadog train services, operated by Cross Country, arrive at Porthmadog station.
Book your Oxford to Porthmadog train tickets online with Cross Country and Transport for Wales.
The distance between Oxford and Porthmadog is 234.8 km. The road distance is 350 km.
You can take a train from Oxford to Porthmadog via Birmingham New Street and Machynlleth in around 7h 32m.