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

49 min • 1 change
27 min • 1 change
48 min • 1 change
31 min • 1 change
38 min • 1 change
43 min • 1 change
47 min • 1 change
47 min • 1 change
54 min • 1 change
26 min • 1 change
39 min • 1 change
29 min • 1 change
54 min • 1 change
26 min • 1 change
39 min • 1 change
29 min • 1 change
54 min • 1 change
26 min • 1 change
39 min • 1 change
29 min • 1 change
54 min • 1 change
26 min • 1 change
39 min • 1 change
29 min • 1 change
54 min • 1 change
26 min • 1 change
39 min • 1 change
29 min • 1 changeWant to know about travelling from Dunfermline to Kirkcaldy? 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 Kirkcaldy. However, there are services departing from Dunfermline Town station and arriving at Kirkcaldy station via Inverkeithing station. The journey, including transfers, takes approximately 49 min.
Dunfermline to Kirkcaldy train services, operated by ScotRail, depart from Dunfermline Town station.
Dunfermline to Kirkcaldy train services, operated by ScotRail, arrive at Kirkcaldy station.
Book your Dunfermline to Kirkcaldy train tickets online with Omio.
The distance between Dunfermline and Kirkcaldy is 19.2 km. The road distance is 22 km.
You can take a train from Dunfermline Town to Kirkcaldy via Inverkeithing in around 42 min.