Armagh 2-10, Donegal 0-12: Donegal fought back from being nine points down at half-time, 2-6 to 0-3, with Armagh's goals coming from Seán Clarke and Paul Kernan.
In the second half Donegal rallied with points from Stephen Griffin (two) and Dara Gallagher.
Armagh's Kyle Carragher sealed victory in stoppage time.
ARMAGH: J McKeever; P McCourt, K Toner, P McKeown; M Ferris, T McClelland, P Kernan (1-0); K Dyas (0-1), D McKenna; G McGarvey, C Watters (0-1), K Carragher (0-2); S Forker (0-5), S Clarke (1-0), K O'Rourke (0-1). Subs: C Carville for G McGarvey, J Feeney for S Clarke.
DONEGAL: M Deeney; C McGeeney, D Gallagher, E Hegarty; E Wade, P Thornton, S McGowan; D Irwin (0-2), D McDyre; G MacPhaidin (0-2), C Greene (0-1), C McDermott, D Gallagher (0-2), S Griffin (0-4), D Ó Donail. Subs: P Withrow for C McGeeney, Colm Gallagher (0-1) for C Greene, Cornelius Gallagher for D McDyre.
Referee: M Sludden (Tyrone).