The average train between Bath and Haverfordwest takes 4h and the fastest train takes 3h 31m. The train service runs several times per day from Bath to Haverfordwest. 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 Bath and Haverfordwest. The earliest departure is at 1:03 AM at night, and the last departure from Bath is at 4:39 PM which arrives into Haverfordwest at 8:27 PM. All services require a transfer, and take on average 4h. The schedules shown below are for the next available departures.

3h 47m • 1 change
3h 52m • 1 change
3h 50m • 1 change
3h 59m • 1 change
3h 47m • 1 change
3h 52m • 1 change
3h 50m • 1 change
3h 59m • 1 change
3h 47m • 1 change
3h 52m • 1 change
3h 50m • 1 change
3h 58m • 1 change
9h 24m • 1 change
3h 31m • 1 change
3h 36m • 1 change
3h 36m • 1 change
3h 47m • 1 change
3h 52m • 1 change
3h 50m • 1 change
3h 59m • 1 changeWant to know about travelling from Bath to Haverfordwest? 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 Bath to Haverfordwest. However, there are services departing from Bath station and arriving at Haverfordwest station via Haverfordwest. The journey, including transfers, takes approximately 4h.
Bath to Haverfordwest train services, operated by Great Western Railway (GWR), depart from Bristol Temple Meads station.
Bath to Haverfordwest train services, operated by Great Western Railway (GWR), arrive at Haverfordwest station.
Book your Bath to Haverfordwest train tickets online with Great Western Railway (GWR) and Transport for Wales.
The distance between Bath and Haverfordwest is 186 km. The road distance is 253 km.
Transport for Wales operates a train from Bristol Temple Meads to Haverfordwest every 4 hours. Tickets cost £55–100 and the journey takes 3h 27m.