The average train between Invergordon and Edinburgh takes 5h 59m and the fastest train takes 4h 19m. The train service runs several times per day from Invergordon to Edinburgh. 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 4 hours between Invergordon and Edinburgh. The earliest departure is at 6:49 AM in the morning, and the last departure from Invergordon is at 11:05 PM which arrives into Edinburgh at 1:21 PM. All services require a transfer, and take on average 5h 59m. The schedules shown below are for the next available departures.

5h 2m • 1 change

6h 4m • 1 change
Arrives next day

5h 30m • 1 change
Arrives next day

10h 33m • 1 change

4h 24m • 1 change

5h 16m • 1 change

4h 45m • 1 change

5h 2m • 1 change

4h 24m • 1 change

5h 16m • 1 change

4h 45m • 1 change

5h 2m • 1 change

4h 24m • 1 change

5h 16m • 1 change

4h 45m • 1 change

5h 2m • 1 change

4h 24m • 1 change

5h 16m • 1 change

4h 45m • 1 change

5h 2m • 1 change

4h 25m • 1 change

5h 20m • 1 change

4h 44m • 1 change

4h 57m • 1 change
Want to know about travelling from Invergordon to Edinburgh? 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 Invergordon to Edinburgh. However, there are services departing from Invergordon station and arriving at Edinburgh station via Inverness. The journey, including transfers, takes approximately 5h 59m.
Invergordon to Edinburgh train services, operated by ScotRail, depart from Invergordon station.
Invergordon to Edinburgh train services, operated by ScotRail, arrive at Edinburgh Waverley station.
Book your Invergordon to Edinburgh train tickets online with ScotRail, Caledonian Sleeper and London North Eastern Railway Limited (LNER).
The distance between Invergordon and Edinburgh is 201.9 km. The road distance is 347 km.
You can take a train from Invergordon to Edinburgh Waverley via Inverness in around 5h 19m.