Glenn Ferguson was the Linfield hero after the substitute's late double gave the Blues victory in the CIS Cup final.
Glenn Ferguson scored twice to give Linfield victory
Linfield striker Peter Thompson hit the bar in a poor first half before firing his side ahead on 46 minutes.
David Rainey (54) levelled and Seamus Brown (77) slotted into the bottom corner to give the Crues a 2-1 lead.
But Ferguson (86) equalised with a header to make it 500 career goals before the veteran forward stabbed the ball home to win it with a minute left.
Most of the snow which covered the Windsor Park pitch had been cleared as the game started in cold, wet conditions.
There was little to warm up the crowd in a disappointing first half, littered with mistakes and providing few clear-cut openings as defences held sway.
The best chances came in the last 15 minutes of the half, starting with Crues striker Brown pulling his shot across goal and wide when well placed.
Thomas Stewart's pass gave Conor Downey space for a shot but the Linfield midfielder sliced wide after being put under pressure by veteran defender Gary Smyth.
Crusaders keeper Aaron Kerr made an impressive save on 37 minutes as he pushed clear Kris Lindsay's back-post header.
Thompson was denied by the woodwork after 42 minutes when his header from Damien Curran's cross hit the top of the crossbar.
But there was no denying the Northern Ireland striker just seconds after the restart when a clearance from Colin Coates fell into his path and he disptached the ball into the bottom corner from 14 yards.
Thompson pounced when Kerr dropped the ball from a free-kick two minutes later but he failed to connect properly and the chance was gone.
Rainey levelled with a poacher's finish, slamming the ball home from close-range after Alan Mannus could only push out a Browne shot.
Downey was replaced on 65 minutes by Ferguson, the forward just one away from the 500 landmark.
Rainey squandered a glorious opportunity a minute later with a shot straight at Mannus after going clear on goal.
Kerr and Mannus both made good saves before the Crues went 2-1 ahead with 13 minutes left.
The ball was flicked into the path of Brown and the new signing fired low into the bottom corner from 20 yards.
Linfield had penalty claims turned down after a challenge on Paul McAreavey as the league champions pressed for the equaliser.
Ferguson made it 500 on 86 minutes with a pinpoint header into the top corner from 10 yards.
The winner came three minutes later with Ferguson reacting quickest to get to a loose ball ahead of two defenders and netting from two yards.
Crusaders' hopes ended when Eamonn McAllister's shot hit the side-netting in the fourth minute of injury time.
Ferguson, despite only being on the pitch for 25 minutes, was named man-of-the-match.
Crusaders: Kerr, Magowan, McBride, Doherty, Smyth, Coates, Morrow, Coulter, Brown, Rainey, Emerson.
Linfield: Mannus, Ervin, Murphy, Lindsay, O'Kane, Downey, McAreavey, Mulgrew, Curran, Thompson, Stewart.