The average train between Elgin and Tain takes 3h 35m and the fastest train takes 1h 58m. The train service runs several times per day from Elgin to Tain. 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 Elgin and Tain. The earliest departure is at 9:50 AM in the morning, and the last departure from Elgin is at 11:29 PM which arrives into Tain at 10:50 AM. All services require a transfer, and take on average 3h 35m. The schedules shown below are for the next available departures.

1h 58m • 1 change

2h 36m • 1 change

3h 9m • 1 change

2h 7m • 1 change

1h 58m • 1 change

2h 36m • 1 change

3h 9m • 1 change

2h 7m • 1 change

1h 58m • 1 change

2h 36m • 1 change

3h 9m • 1 change

2h 7m • 1 change

1h 58m • 1 change

2h 36m • 1 change

3h 9m • 1 change

2h 7m • 1 change

1h 58m • 1 change

2h 36m • 1 change

3h 9m • 1 change

2h 7m • 1 change

2h 1m • 1 change

2h 7m • 1 change

2h 49m • 1 change
Arrives next day

9h 15m • 1 change

1h 58m • 1 change

2h 36m • 1 change

3h 9m • 1 change

2h 7m • 1 change
Want to know about travelling from Elgin to Tain? 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 Elgin to Tain. However, there are services departing from Elgin station and arriving at Tain station via Inverness. The journey, including transfers, takes approximately 3h 35m.
Elgin to Tain train services, operated by ScotRail, depart from Elgin station.
Elgin to Tain train services, operated by ScotRail, arrive at Tain station.
Book your Elgin to Tain train tickets online with ScotRail.
The distance between Elgin and Tain is 47.3 km. The road distance is 129 km.
You can take a train from Elgin to Tain via Inverness in around 2h 58m.