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

1h 16m • 1 change

1h 18m • 1 change

1h 2m • 1 change

1h 10m • 1 change

1h 27m • 1 change

1h 18m • 1 change

1h 31m • 1 change

1h 12m • 1 change

1h 27m • 1 change

1h 18m • 1 change

1h 31m • 1 change

1h 12m • 1 change
Want to know about travelling from Rosyth to Stirling? 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 Rosyth to Stirling. However, there are services departing from Rosyth station and arriving at Stirling station via Haymarket. The journey, including transfers, takes approximately 1h 38m.
Rosyth to Stirling train services, operated by ScotRail, depart from Rosyth station.
Rosyth to Stirling train services, operated by ScotRail, arrive at Stirling station.
Book your Rosyth to Stirling train tickets online with ScotRail and London North Eastern Railway Limited (LNER).
The distance between Rosyth and Stirling is 33.2 km. The road distance is 77 km.
You can take a train from Rosyth to Stirling via Haymarket in around 1h 27m.