Calgary police say a DNA match led to the suspect's arrest in Kingston on Saturday, which police say involved a standoff with officers before he eventually surrendered.
Investigators say a woman in her 50s was alone in the closed restaurant at about 5 a.m. on March 28, 1995, when a man forced his way in and assaulted her.
He allegedly forced her into her vehicle and drove her to the outskirts of Calgary, where police say he sexually assaulted her and left her on the side of the road.
Police say the woman flagged down a passing car for help.
Wayne Howard Bernard, 53, of Kingston faces numerous charges including sexual assault with a weapon, kidnapping and robbery.
Kingston police say arrangements are being made to return Bernard to Alberta to face the allegations.
ALSO ON HUFFPOST: