GREATER Western Sydney has inflicted Collingwood's first defeat this year and avoided a third straight loss to put its season back on track.
In a fitting follow-up to their gritty preliminary final clash last year, GWS again withstood a last quarter onslaught to hang on for a 10.6 (66) to 9.10 (64) victory at GIANTS Stadium.
GIANTS v MAGPIES Full match coverage and stats
Only four points separated the sides last time as the GIANTS booked their maiden Grand Final berth, and there was deservedly even less between them on Friday night.
The returning Toby Greene was best afield with a match-winning three goals in another entertaining duel with Magpies defender Brayden Maynard, who still did his part for the black and white.
The GIANTS barely pierced their attacking 50 in the fourth term but made it count when they did.
Jeremy Cameron – otherwise well held by Darcy Moore – steered through a difficult set shot late in the contest to give GWS just enough breathing room.
A Mason Cox goal shortly afterwards set up a thrilling finish inside the final three minutes but the GWS backline, led superbly by Nick Haynes, hung tough.
It was an enormous effort from GWS, which was coming off consecutive disappointing displays against North Melbourne and the Western Bulldogs and entered the final term two players down.
Both Phil Davis' and Zac Williams' night ended early because of hamstring issues and an errant Scott Pendlebury set shot gave the Pies their first lead since the opening quarter.
Collingwood also lost Jeremy Howe in the last term, appearing to seriously hurt his right knee in a heavy collision with Jacob Hopper as they charged at the Sherrin.
Earlier, the GIANTS looked set to lodge an emphatic victory.
Harry Perryman kicked truly on the run midway through the third quarter to extend the margin out to 18 points – and at that point they had kicked six of the last eight goals.
However, a pair of goals each to Brody Mihocek and Tom Phillips, after underwhelming starts to the contest, revived the Pies' cause and ensured a grandstand finish.
GREATER WESTERN SYDNEY 1.3 4.4 8.6 10.6 (66)
COLLINGWOOD 2.2 4.4 8.5 9.10 (64)
Greater Western Sydney: Greene 3, Cameron 2, Finlayson, Green, Perryman, Ward, Kelly
Collingwood: Stephenson 2, Mihocek 2, Phillips 2, Daicos, Crisp, Cox
Greater Western Sydney: Greene, Whitfield, Green, Haynes, Kelly, de Boer
Collingwood: Moore, Pendlebury, Howe, Maynard, Crisp, Wills
Greater Western Sydney: Davis (right hamstring), Williams (left hamstring)
Collingwood: Howe (right knee)