The average train between Bristol and Dunfermline takes 8h 45m 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 5:00 PM which arrives into Dunfermline at 2:54 PM. All services require a transfer at Stafford and take an average of 8h 45m. 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 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
Want 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 station and arriving at Dunfermline station via Stafford. The journey, including transfers, takes approximately 8h 45m.
Bristol to Dunfermline train services, operated by Cross Country, depart from Bristol Temple Meads station.
Bristol to Dunfermline train services, operated by Cross Country, arrive at Haymarket station.
Book your Bristol to Dunfermline train tickets online with Cross Country, Avanti West Coast and ScotRail.
The distance between Bristol and Dunfermline is 516.4 km. The road distance is 638 km.
You can take a train from Bristol Temple Meads to Dunfermline Town via Stafford and Haymarket in around 7h 22m.