An Inverness strike knocked out rail signalling between Aviemore and Inverness – causing disruption to services across the north.
Trains arriving from the Central Belt to the Highland capital were delayed by hours, while a number of services south were cancelled.
Furious passengers missed connecting services, while others said they were unable to make planned ferry journeys.
Pauline Archibald, 43, was travelling north from Fife with three children under seven.
She said: “We were due in to Inverness just after 2pm, but didn’t arrive until after 5.30pm.
“Thankfully the staff were very patient with customers and other passengers kept my kids amused.
“You can’t foresee circumstances such as lightning strikes, but it is very difficult travelling with three children for hours.
“It was very unfortunate for some people who had connecting journeys, but it no one was hurt and we got there in the end.”
A ScotRail spokesman confirmed there was a signalling fault between Inverness and Carrbridge in the early afternoon.
Engineers were called to fix the fault as quickly as possible, with disruption continuing throughout the event.
He added: “We’re sorry to our customers who’ve had their journey disrupted due to the signalling fault near Carrbridge.
“Engineers are working as quickly as possible to fix the fault, get services moving and customers where they need to be.
“Anyone delayed by 30 minutes or more can claim money back through our Delay Repay Guarantee. Just keep hold of your ticket and claim on our website or mobile app.”
Priority was given to outgoing services from Inverness, which held up trains travelling to the Highland capital.
Services were later cancelled for journeys to the Central Belt.