The average train between Kirkcaldy and Lanark takes 3h 10m and the fastest train takes 2h 22m. There is an hourly train service from Kirkcaldy to Lanark. 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 Kirkcaldy and Lanark. 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 Lanark at 8:15 AM. All services require a transfer at Haymarket and take an average of 3h 10m. The schedules shown below are for the next available departures.


2h 40m • 2 changes

2h 37m • 2 changes

2h 47m • 2 changes

2h 32m • 2 changes

3h 16m • 2 changes

2h 25m • 2 changes

2h 43m • 2 changes

2h 34m • 2 changes

3h 16m • 2 changes

2h 25m • 2 changes

2h 43m • 2 changes

2h 34m • 2 changesWant to know about travelling from Kirkcaldy to Lanark? 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 Lanark. However, there are services departing from Kirkcaldy station and arriving at Lanark station via Haymarket. The journey, including transfers, takes approximately 3h 10m.
Kirkcaldy to Lanark train services, operated by ScotRail, depart from Kirkcaldy station.
Kirkcaldy to Lanark train services, operated by ScotRail, arrive at Lanark station.
Book your Kirkcaldy to Lanark train tickets online with ScotRail, London North Eastern Railway Limited (LNER) and Cross Country.
The distance between Kirkcaldy and Lanark is 62.6 km. The road distance is 124 km.
You can take a train from Kirkcaldy to Lanark via Haymarket and Bellshill in around 3h 13m.