Duration 27 min
Distance 16.9 miles
Average price £8
Frequency Hourly

Trip overview

The average train between Haymarket Station and Dunfermline takes 27 min and the fastest train takes 25 min. There is an hourly train service from Haymarket Station 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.


  1. Haymarket
  2. Dunfermline
26 min
Bookable on Rome2rio
£3 - £10

Frequently asked questions

Want to know about travelling from Haymarket Station 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.

Yes, there is a direct train departing from Haymarket and arriving at Dunfermline Town. Services depart hourly, and operate every day. The journey takes approximately 26 min.

More details

The distance between Haymarket Station and Dunfermline is 13 miles. The road distance is 16.9 miles.

Get driving directions

Haymarket Station to Dunfermline train services, operated by ScotRail, depart from Haymarket station.

More details

Haymarket Station to Dunfermline train services, operated by ScotRail, arrive at Dunfermline Town station.

More details

Book your Haymarket Station to Dunfermline train tickets online with Rome2rio.

Search and book

There are 2946+ hotels available in Dunfermline. Prices start at £61 per night.

More details

What companies run services between Haymarket Station and Dunfermline?

ScotRail operates a train from Haymarket Station to Dunfermline hourly. Tickets cost £3 - £10 and the journey takes 26 min.
Train operators
Ave. Duration
26 min
Estimated price
£3 - £10

Get the Rome2rio app

Find the best way to get from A to B, anywhere in the world, on your mobile or tablet.

Compare your options: plane, train, bus, car, ferry, bike share, driving and walking directions all in one search.

Learn more about our apps