Trains between Tayside and Glasgow were delayed or cancelled on Friday during rush hour due to animals on the railway line.
ScotRail said the line was blocked between Dunblane and Gleneagles at around 4pm.
It meant services heading from the central belt to Dundee, Aberdeen and Inverness were affected.
A tweet from the operator said: “Due to animals on the railway between Dunblane and Gleneagles the line towards Perth is closed.”
Shuttle bus services were provided for affected passengers.
Around three and a half hours later, Scotrail tweeted to say services were returning to normal but some disruption was expected due to “trains and crew being out of position”.
Passengers complain of disruption
Passengers complained about being affected by the disruption on social media.
One posted: “When is the next train to Aberdeen? Loads of people waiting in Perth with no further information as to when a train will arrive.”
Another tweeted: “When is it likely to be sorted? Next three trains are cancelled to Dunblane.”
A passenger also complained about being “stuck” on a train bound for Inverness.
Conversation