The average train between Dundee and Aviemore takes 2h 43m and the fastest train takes 1h 51m. The train service runs several times per day from Dundee to Aviemore. 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 3 hours between Dundee and Aviemore. The earliest departure is at 7:12 AM in the morning, and the last departure from Dundee is at 11:49 PM which arrives into Aviemore at 7:38 AM. All services require a transfer, and take on average 2h 43m. The schedules shown below are for the next available departures.

2h 16m • 1 change

2h 21m • 1 change

2h 12m • 1 change

1h 57m • 1 change

2h 39m • 1 change

2h 11m • 1 change

2h 30m • 1 change

2h 16m • 1 change

2h 39m • 1 change

2h 11m • 1 change

2h 30m • 1 change

2h 16m • 1 change

2h 39m • 1 change

2h 11m • 1 change

2h 30m • 1 change

2h 16m • 1 change

2h 39m • 1 change

2h 11m • 1 change

2h 30m • 1 change

2h 16m • 1 change
Want to know about travelling from Dundee to Aviemore? 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 Dundee to Aviemore. However, there are services departing from Dundee station and arriving at Aviemore station via Aviemore. The journey, including transfers, takes approximately 2h 43m.
Dundee to Aviemore train services, operated by ScotRail, depart from Perth station.
Dundee to Aviemore train services, operated by ScotRail, arrive at Aviemore station.
Book your Dundee to Aviemore train tickets online with ScotRail, London North Eastern Railway Limited (LNER) and Caledonian Sleeper.
The distance between Dundee and Aviemore is 95.9 km. The road distance is 165 km.
ScotRail operates a train from Perth to Aviemore every 3 hours. Tickets cost £35–65 and the journey takes 1h 38m. Two other operators also service this route.