The average train between Bristol and Dunfermline takes 8h 55m and the fastest train takes 6h 46m. The train service runs several times per day from Bristol to Dunfermline. 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 5 times a day between Bristol and Dunfermline. The earliest departure is at 8:00 AM in the morning, and the last departure from Bristol is at 6:00 PM which arrives into Dunfermline at 10:45 AM. All services require a transfer at Stafford and take an average of 8h 55m. The schedules shown below are for the next available departures.


6h 50m • 2 changes

6h 50m • 2 changes

6h 52m • 2 changes

6h 49m • 2 changes

6h 50m • 2 changes

6h 50m • 2 changes

6h 52m • 2 changes

6h 49m • 2 changes

6h 52m • 2 changes

6h 51m • 2 changes

6h 51m • 2 changes

6h 46m • 2 changes

6h 50m • 2 changes

6h 50m • 2 changes

6h 50m • 2 changes

6h 49m • 2 changes

6h 50m • 2 changes

6h 50m • 2 changes

6h 50m • 2 changes

6h 49m • 2 changesWant to know about travelling from Bristol to Dunfermline? 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 Bristol to Dunfermline. However, there are services departing from Bristol Temple Meads station and arriving at Haymarket station via Stafford station. The journey, including transfers, takes approximately 8h 55m.
Bristol to Dunfermline train services, operated by Cross Country, depart from Bristol Temple Meads station.
Bristol to Dunfermline train services, operated by Avanti West Coast, arrive at Haymarket station.
Book your Bristol to Dunfermline train tickets online with Omio.
The distance between Bristol and Dunfermline is 516.4 km. The road distance is 618 km.
You can take a train from Bristol Temple Meads to Dunfermline Town via Stafford and Haymarket in around 7h 19m.