A Toronto-bound Via Rail train experienced a mechanical failure in eastern Saskatchewan, delaying the holiday travels of 98 passengers who spent most of Christmas Day in the tiny community of Spy Hill.

The train originated in Vancouver but was hobbled on a –30 C night near the Manitoba border, forcing Via Rail to leave its passengers in the village of about 300 people that's located some 250 kilometres east of Regina.

The train was already eight hours late when Langham, Sask., resident Ryan Siemens and his family boarded it in Saskatoon at about 5:30 p.m. local time on Christmas Eve. Siemens, his wife Sandra Siemens and their three sons were hoping to make it to Winnipeg by Christmas Day.

The delayed train became a hobbled locomotive east of Melville, Sask., where emergency lights flickered on, Siemens said.

"It ended up stalling out. It sounded like something to do with fuel lines freezing and running out of power," he said in a telephone interview from Spy Hill on Monday afternoon.

Without power, the train started losing heat. All the economy-class passengers were moved into one car at about 4:30 on Christmas morning, he said.

After sitting still for several hours, the train reversed course to Spy Hill. Siemens and his family disembarked at about 10 a.m. to find a reception centre in the village's community hall.

"Already there was the fire chief of Spy Hill and the whole crew. Sandwiches were made. Pancakes were being made," said Siemens.

"The volunteer fire chief organized the people. We got here, tables were already set up. Food was already being made. They fed us and they brought out toys for the kids. It was remarkable."

Sandra Siemens and her sons Elliott, Isaiah and Bennett endured a 24-hour rail and bus trip from Saskatoon to Winnipeg. (Ryan Siemens/Facebook)

Siemens said the Via Rail chefs then helped prepare a "a pretty good Christmas brunch" shortly after noon. In the meantime, Via Rail made bus and air travel arrangements for the stranded passengers, said Siemens.

Siemens said three chartered buses arrived to pick up passengers and take them to Winnipeg at about 3 p.m. on Monday.

"The crew has been phenomenal. They've been going non-stop working hard to ensure all [our] needs are being met," he said.

In the end, he expected it to take 24 hours to travel between Saskatoon and Winnipeg, two cities separated by a distance that can be travelled in eight hours by car or 90 minutes by air.

"This is what you watch on TV, where these type of things happen," said Siemens, comparing the ordeal on the train and the warm response in eastern Saskatchewan to an afternoon TV special. "Kudos to the people of Spy Hill."

Via Rail said in a statement that "extreme cold" was to blame for the mechanical failure.