The average train between London and Inverkeithing takes 4h 56m and the fastest train takes 4h 26m. There is an hourly train service from London to Inverkeithing. 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 London and Inverkeithing. The earliest departure is at 5:48 AM in the morning, and the last departure from London is at 8:03 PM which arrives into Inverkeithing at 4:55 AM. All services require a transfer, and take on average 4h 56m. The schedules shown below are for the next available departures.

5h 1m • 1 change

4h 36m • 1 change

4h 53m • 1 change

4h 41m • 1 change

5h 1m • 1 change

4h 42m • 1 change

4h 30m • 1 change

4h 53m • 1 change

4h 49m • 1 change

4h 52m • 1 change

4h 54m • 1 change

4h 49m • 1 change
Want to know about travelling from London to Inverkeithing? 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 London to Inverkeithing. However, there are services departing from London station and arriving at Inverkeithing station via Edinburgh Waverley. The journey, including transfers, takes approximately 4h 56m.
London to Inverkeithing train services, operated by London North Eastern Railway Limited (LNER), depart from King's Cross station.
London to Inverkeithing train services, operated by London North Eastern Railway Limited (LNER), arrive at Edinburgh Waverley station.
Book your London to Inverkeithing train tickets online with London North Eastern Railway Limited (LNER), ScotRail and Caledonian Sleeper.
The distance between London and Inverkeithing is 546.8 km. The road distance is 649 km.
London North Eastern Railway Limited (LNER) operates a train from King's Cross to Edinburgh Waverley hourly. Tickets cost £110–170 and the journey takes 4h 6m.