Promotion-chasing Monaghan got the better of Armagh by 1-17 to 0-10 in the Allianz Football League Division Two derby at the Athletic Grounds.
Monaghan raced into a nine-point lead with three each from Jack McCarron and Conor McManus, while Rory Beggan saved a Jamie Clarke penalty.
But Armagh narrowed the gap to four (0-10 to 0-06) at the break, and to a single point, before losing Andy Mallon to a second booking.
Substitute Darren Hughes completed the job with a stoppage time goal, while McManus finished with a seven points tally as the Farney men moved into second place.
Monaghan made a strong start, moving the ball from deep for Padraig Donaghy to given them an early lead, before Jack McCarron eased them three points clear with a couple of frees.
Dessie Mone and Vinny Corey used their vast experience to snuff out a handful of Orchard attacks, and the home side struggled to find new ideas.
The Farney men, on the other hand, were able to slice through the opposition defence with their movement and incisive passing, and stretched the lead through Conor McManus, wing back Dessie Mone and Kieran Hughes.
Armagh were handed a route into the game in the 16th minute when they were awarded a penalty for goalkeeper Rory Beggan’s foul on Stefan Campbell.
But Beggan redeemed himself with a brilliant save, diving low to his left to push Jamie Clarke’s kick onto the post.
Midfielder Owen Lennon had opened out the visitors’ lead to nine points by the time Armagh got their first score, a 24th minute effort from substitute Brian Mallon.
Jamie Clarke swung over a brilliant score, and as the workrate improved, so too did the humour of their supporters, with Stephen Harold, Clarke, Caolan Rafferty and Tony Kernan all hitting the target in the closing stages of the opening half.
Monaghan led by 0-10 to 0-06 at the interval
Ethan Rafferty and Andy Mallon provided the platform as Armagh started the second with a flourish, cutting the deficit through Eugene McVerry
Mark Shields defended solidly to keep tabs on All Star attacker McManus, and Paul Grimley’s side was now looking the more dangerous of the two.
A wonderful McVerry effort, followed by a Caolan Rafferty point, narrowed the gap to just one, and with breaking ball now falling to the hungry home side, Monaghan struggled to rediscover their early fluency.
But Malachy O’Rourke’s men re-asserted themselves, and Armagh scored just one point in the final 25 minutes, while Monaghan racked up a winning 1-06 haul.
It all started to go wrong for Armagh when experienced defender Andy Mallon, an All-Ireland winner back in 2002, was sent off for a second booking in the 54th minute.
McCarron and McManus continued to hit the target from frees, and as desperation grew in the closing stages, Clarke went for goal direct from a free kick, but he was once again denied by Beggan.
It was Monaghan who struck for the game’s only goal, Darren Hughes making his return from injury as a late substitute, and marking a welcome comeback by crashing the ball to the net in stoppage time.
Armagh: P McEvoy, P Hughes, A Findon, M Murray, M Shields, A Mallon, P O'Neill, S Harold (0-01), E Rafferty, R Grugan, T Kernan (0-01, f), C Rafferty (0-02), J Clarke (0-03, 2f), S Campbell, S Forker.
Subs: B Mallon (0-01) for O’Neill (19), E McVerry (0-02) for Grugan (27), R Tasker for Forker (40), K O’Rourke for Shields (52)
Monaghan: R Beggan, K Duffy, D Wylie, F Kelly, C Walshe, V Corey, D Mone (0-01), G Doogan, O Lennon (0-01), K O’Connell, P Finlay, K Hughes (0-01), P Donaghy (0-01), D Malone, J McCarron (0-06, 5f), C McManus (0-07, 5f).
Subs: P O’Hanlon for Malone (50), C McGuinness for Donaghy (59), D Hughes (1-00) for Lennon (64)
Referee: D Gough (Meath).