Galway put themselves in pole position for a place in the Division One final following Matthew Tierney's smash-and-grab winning goal at the Box-It Athletic Grounds.

Tierney beat Armagh goalkeeper Ethan Rafferty to Shane Walsh’s long ball in the 69th minute to complete a great comeback from the Tribesmen.

The result leaves Armagh in trouble as they face rivals Tyrone in Healy Park next weekend, possibly needing a win to avoid the drop to Division Two.

Pádraic Joyce’s Galway welcome All-Ireland champions Kerry on Sunday and they will be confident of finishing their campaign on the high, especially with players Walsh and the returning Robert Finnerty getting important minutes in the legs.

Armagh failed to score for 35 minutes in the second half and only found the target on two occasions during the second period as Galway came from four points down at the break to grab the points on offer.

Played in front of a bumper crowd at the Box-It Athletic Grounds, it was a cagey opening half with both sides getting bodies back and proving hard to break down.

Stefan Campbell and Callum Cumiskey put Armagh in front after 20 minutes and then goalkeeper Ethan Rafferty found the net when his 55-metre effort landed in the net.

Galway's first score came from Johnny Heaney after 26 minutes and Cathal Sweeney added another a minute later.

Rian O’Neill and Ciaran Mackin extended Armagh’s lead with two long-range points from either side of the pitch before Walsh replied on the cusp of half time.

Johnny Heaney, left, and John Maher of Galway celebrate after the game

Rory Grugan and Aidan Nugent were Armagh’s only scorers in the second period - and 35 minutes apart - as Galway hit 1-05 in between.

With John Maher, Walsh, Matthew Tierney and substitute Tomo Culhane impressing for the Tribesmen, Galway ate into Armagh’s lead.

Heaney, Paul Conroy and a pair of marks from Culhane had the sides level with time almost up before Tierney punched into the net a late, great winner for Galway.

Armagh: Ethan Rafferty (1-00), Barry McCambridge, Aaron McKay, Aidan Forker, Ciaran Mackin (0-01) Greg McCabe, Jarly Og Burns, Stefan Campbell (0-01), Tiernan Kelly, Callum Cumiskey (0-01), Rory Grugan (0-01, 0-1f), Joe McElroy, Rian O’Neill (0-01), Andrew Murnin, Jason Duffy.

Subs: Jemar Hall for Cumiskey (29), Stephen Sheridan for Kelly (ht), Conor Turbitt for McCabe (48), Ross McQuillan for McKay (51), Niall Grimley for Sheridan (58), Aidan Nugent (0-01) for O’Neill (65).

Galway: Conor Gleeson, John McGrath, Sean Kelly, Sean Fitzgerald, Dylan McHugh, John Daly, Cian Hernon, Paul Conroy (0-01), Paul Kelly, Matthew Tierney (1-00), Johnny Heaney (0-02), John Maher, Patrick Kelly, Shane Walsh (0-02, 0-2fs), Cathal Sweeney (0-01).

Subs: Robert Finnerty for Kelly (ht), Tomo Culhane (0-02, 0-2ms) for P Kelly (43),Daniel O’Flaherty for Maher (68), Billy Mannion for Hernon (70), Ryan Monaghan for J Daly (76).

Referee: David Gough (Meath).