The average train between Arbroath and Rosyth takes 1h 55m and the fastest train takes 1h 26m. There is a train service every few hours from Arbroath to Rosyth. 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 hourly between Arbroath and Rosyth. The earliest departure is at 6:49 AM in the morning, and the last departure from Arbroath is at 11:24 PM which arrives into Rosyth at 6:43 AM. All services require a transfer, and take on average 1h 55m. The schedules shown below are for the next available departures.

1h 47m • 1 change

1h 32m • 1 change

1h 51m • 1 change

1h 40m • 1 change

1h 33m • 1 change

1h 36m • 1 change

1h 47m • 1 change

1h 33m • 1 change

1h 50m • 1 change

1h 38m • 1 change

1h 40m • 1 change

1h 42m • 1 change
Want to know about travelling from Arbroath to Rosyth? 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 Arbroath to Rosyth. However, there are services departing from Arbroath station and arriving at Rosyth station via Dundee. The journey, including transfers, takes approximately 1h 55m.
Arbroath to Rosyth train services, operated by ScotRail, depart from Arbroath station.
Arbroath to Rosyth train services, operated by ScotRail, arrive at Inverkeithing station.
Book your Arbroath to Rosyth train tickets online with ScotRail, London North Eastern Railway Limited (LNER) and 2 other operators.
The distance between Arbroath and Rosyth is 77.7 km. The road distance is 100 km.
You can take a train from Arbroath to Inverkeithing via Dundee in around 1h 54m.