The average train between York and Dunfermline takes 3h 25m and the fastest train takes 2h 55m. There is a train service every few hours from York 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 hourly between York and Dunfermline. The earliest departure is at 5:45 AM in the morning, and the last departure from York is at 10:05 PM which arrives into Dunfermline at 7:20 AM. All services require a transfer, and take on average 3h 25m. The schedules shown below are for the next available departures.

3h 32m • 1 change

3h 14m • 1 change

2h 55m • 1 change

3h 1m • 1 change

3h 32m • 1 change

3h 14m • 1 change

2h 55m • 1 change

3h 1m • 1 change

3h 37m • 1 change

3h 20m • 1 change

3h 1m • 1 change

2h 59m • 1 change
Want to know about travelling from York 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 York to Dunfermline. However, there are services departing from York station and arriving at Dunfermline station via Edinburgh Waverley. The journey, including transfers, takes approximately 3h 25m.
York to Dunfermline train services, operated by London North Eastern Railway Limited (LNER), depart from York station.
York to Dunfermline train services, operated by London North Eastern Railway Limited (LNER), arrive at Edinburgh Waverley station.
Book your York to Dunfermline train tickets online with London North Eastern Railway Limited (LNER), ScotRail and Cross Country.
The distance between York and Dunfermline is 279.6 km. The road distance is 352 km.
London North Eastern Railway Limited (LNER) operates a train from York to Edinburgh Waverley hourly. Tickets cost £55–90 and the journey takes 2h 17m. Cross Country also services this route hourly.