The average train between Inverness and Midlothian takes 5h 1m and the fastest train takes 3h 46m. The train service runs several times per day from Inverness to Midlothian. 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 Inverness and Midlothian. The earliest departure is at 4:54 AM at night, and the last departure from Inverness is at 8:45 PM which arrives into Midlothian at 6:41 AM. All services require a transfer, and take on average 5h 1m. The schedules shown below are for the next available departures.

5h 17m • 1 change
4h 27m • 1 change
4h 16m • 1 change
4h 30m • 1 change
3h 46m • 1 change
4h 13m • 1 change
4h 17m • 1 change
4h 45m • 1 change
5h 17m • 1 change
4h 33m • 1 change
4h 16m • 1 change
4h 29m • 1 change
5h 17m • 1 change
4h 33m • 1 change
4h 16m • 1 change
4h 29m • 1 change
5h 17m • 1 change
4h 33m • 1 change
4h 16m • 1 change
4h 29m • 1 change
5h 17m • 1 change
4h 33m • 1 change
4h 16m • 1 change
4h 29m • 1 changeWant to know about travelling from Inverness to Midlothian? 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 Inverness to Midlothian. However, there are services departing from Inverness station and arriving at Midlothian station via Edinburgh Waverley. The journey, including transfers, takes approximately 5h 1m.
Inverness to Midlothian train services, operated by ScotRail, depart from Inverness station.
Inverness to Midlothian train services, operated by ScotRail, arrive at Edinburgh Waverley station.
Book your Inverness to Midlothian train tickets online with ScotRail, Caledonian Sleeper and London North Eastern Railway Limited (LNER).
The distance between Inverness and Midlothian is 195.8 km. The road distance is 316 km.
ScotRail operates a train from Inverness to Edinburgh Waverley every 4 hours. Tickets cost £70–140 and the journey takes 3h 23m. Two other operators also service this route.