The average train between Dunfermline and Elgin takes 7h 10m and the fastest train takes 4h 22m. The train service runs several times per day from Dunfermline to Elgin. 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 Dunfermline and Elgin. The earliest departure is at 10:30 AM in the morning, and the last departure from Dunfermline is at 11:56 PM which arrives into Elgin at 9:49 AM. All services require a transfer at Inverkeithing and take an average of 7h 10m. The schedules shown below are for the next available departures.


4h 40m • 2 changes

4h 22m • 2 changes

4h 54m • 2 changesArrives next day


11h 9m • 2 changes

4h 40m • 2 changes

4h 22m • 2 changes

4h 54m • 2 changesArrives next day


11h 9m • 2 changes

4h 40m • 2 changes

4h 22m • 2 changes

4h 55m • 2 changesArrives next day


11h 9m • 2 changes

4h 40m • 2 changes

4h 22m • 2 changes

4h 55m • 2 changesArrives next day


11h 9m • 2 changes

4h 40m • 2 changes

4h 22m • 2 changes

4h 55m • 2 changesArrives next day


11h 9m • 2 changesWant to know about travelling from Dunfermline to Elgin? 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 Dunfermline to Elgin. However, there are services departing from Inverkeithing station and arriving at Elgin station via Aberdeen station. The journey, including transfers, takes approximately 7h 10m.
Dunfermline to Elgin train services, operated by London North Eastern Railway Limited (LNER), depart from Inverkeithing station.
Dunfermline to Elgin train services, operated by ScotRail, arrive at Elgin station.
Book your Dunfermline to Elgin train tickets online with Omio.
The distance between Dunfermline and Elgin is 175.7 km. The road distance is 234 km.
You can take a train from Dunfermline Town to Elgin via Inverkeithing and Aberdeen in around 5h 51m.