The average train between Kirkcaldy and Dunfermline takes 39 min and the fastest train takes 26 min. The train runs at least 2 times per hour from Kirkcaldy 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 every 30 minutes between Kirkcaldy and Dunfermline. The earliest departure is at 5:57 AM in the morning, and the last departure from Kirkcaldy is at 11:17 PM which arrives into Dunfermline at 11:50 PM. All services require a transfer, and take on average 39 min. The schedules shown below are for the next available departures.

53 min • 1 change
42 min • 1 change
36 min • 1 change
38 min • 1 change
53 min • 1 change
44 min • 1 change
31 min • 1 change
43 min • 1 change
35 min • 1 change
32 min • 1 change
45 min • 1 change
38 min • 1 changeWant to know about travelling from Kirkcaldy 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 Kirkcaldy to Dunfermline. However, there are services departing from Kirkcaldy station and arriving at Dunfermline station via Inverkeithing. The journey, including transfers, takes approximately 39 min.
Kirkcaldy to Dunfermline train services, operated by ScotRail, depart from Kirkcaldy station.
Kirkcaldy to Dunfermline train services, operated by ScotRail, arrive at Dunfermline Town station.
Book your Kirkcaldy to Dunfermline train tickets online with ScotRail, London North Eastern Railway Limited (LNER) and 2 other operators.
The distance between Kirkcaldy and Dunfermline is 19.2 km. The road distance is 26 km.
You can take a train from Kirkcaldy to Dunfermline Town via Inverkeithing in around 50 min.