Surinder Singh Parmar, who was a teacher in India and held a PhD in history, was found stabbed to death on November 19, 1990, inside a men's washroom of the Penny Gas Bar in Toronto.
The suspect Rupert Richards, now 61, was arrested on Monday from his home in Toronto, police said on Tuesday.
Richards was "quite surprised" to learn that he has been charged with first-degree murder in the 1990 killing, CBC news reported.
Det-Sgt Stacy Gallant, in charge of the Toronto police force's cold-case unit, said innovations in DNA evidence and other investigative techniques helped crack the case.
"Items were re-examined," Gallant said. "Items that had been sitting on a shelf for years."
Mr Parmar, 38, worked during night at the gas station and had family in India, including a wife and two children aged six and 12.
After his death, the family immigrated to Canada. The family currently lives in the Toronto area, the report said.
Gallant said they were happy to hear of the arrest, but did not want to speak to the media.
"To go 25 years without knowing who did this to their father was difficult to cope with," said Gallant.
Mr Parmar arrived in Canada in June 1990 and had planned to return home in January. He died of multiple stab wounds to the neck and abdomen.
"He was trying to make a little money," Toronto police Det-Sgt Jim Crowley told The Canadian Press in 1990. "He wanted to see some friends on the West Coast before he went back to India."
At the time of the incident, police told reporters that Mr Parmar was likely killed during a robbery at the 24-hour gas station.
Get Breaking news, live coverage, and Latest News from India and around the world on NDTV.com. Catch all the Live TV action on NDTV 24x7 and NDTV India. Like us on Facebook or follow us on Twitter and Instagram for latest news and live news updates.