The average train between Barnstaple and Bath takes 3h 26m and the fastest train takes 2h 30m. There is a train service every few hours from Barnstaple to Bath. 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 hourly between Barnstaple and Bath. The earliest departure is at 6:25 AM in the morning, and the last departure from Barnstaple is at 10:41 PM which arrives into Bath at 7:33 AM. All services require a transfer at Exeter St Davids and take an average of 3h 26m. The schedules shown below are for the next available departures.


2h 58m • 2 changes


2h 58m • 2 changes


3h 8m • 2 changes


3h 6m • 2 changes


3h 16m • 2 changes


3h 19m • 2 changes


2h 59m • 2 changes


2h 36m • 2 changes


3h 16m • 2 changes


3h 19m • 2 changes


2h 59m • 2 changes


2h 36m • 2 changes


3h 16m • 2 changes


3h 19m • 2 changes


2h 59m • 2 changes


2h 36m • 2 changes
Want to know about travelling from Barnstaple to Bath? 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 Barnstaple to Bath. However, there are services departing from Barnstaple station and arriving at Bath station via Exeter St Davids. The journey, including transfers, takes approximately 3h 26m.
Barnstaple to Bath train services, operated by Great Western Railway (GWR), depart from Barnstaple station.
Barnstaple to Bath train services, operated by Great Western Railway (GWR), arrive at Bristol Temple Meads station.
Book your Barnstaple to Bath train tickets online with Great Western Railway (GWR) and Cross Country.
The distance between Barnstaple and Bath is 122.6 km. The road distance is 202 km.
You can take a train from Barnstaple to Bath Spa via Exeter St Davids and Bristol Temple Meads in around 2h 43m.