The average bus between Aviemore and Invergarry takes 2h 45m and the fastest bus takes 1h 56m. The bus service runs several times per day from Aviemore to Invergarry. The journey time may be longer on weekends and holidays; use the search form on this page to search for a specific travel date.
Buses run every 4 hours between Aviemore and Invergarry. The earliest departure is at 2:03 AM at night, and the last departure from Aviemore is at 4:55 PM which arrives into Invergarry at 7:21 PM. All services require a transfer, and take on average 2h 45m. The schedules shown below are for the next available departures.

3h 27m • 1 change
2h 6m • 1 change
2h 25m • 1 change
3h 1m • 1 change
3h 26m • 1 change
2h 5m • 1 change
2h 25m • 1 change
3h 21m • 1 change
3h 26m • 1 change
2h 5m • 1 change
2h 24m • 1 change
3h 24m • 1 change
3h 14m • 1 change
1h 56m • 1 change
3h 10m • 1 change
2h 20m • 1 change
3h 35m • 1 change
2h 26m • 1 change
3h 10m • 1 change
2h 20m • 1 change
3h 35m • 1 change
2h 28m • 1 change
2h 25m • 1 change
3h 21m • 1 changeWant to know about travelling from Aviemore to Invergarry? 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 bus from Aviemore to Invergarry. However, there are services departing from Aviemore station and arriving at Invergarry station via Inverness Union Street. The journey, including transfers, takes approximately 2h 45m.
Aviemore to Invergarry bus services, operated by Ember, depart from Aviemore station.
Aviemore to Invergarry bus services, operated by Ember, arrive at Invergarry station.
The distance between Aviemore and Invergarry is 60.5 km. The road distance is 116 km.
You can take a bus from Aviemore station to Invergarry via Inverness Union Street in around 2h 58m.