Donegal showed that they are genuine contenders for this year's All-Ireland Football title as they deservedly saw off Kerry at Croke Park.
Colm McFadden's early goal as his line ball went directly into the net proved the crucial moment of the match.
Donegal led 1-4 to 0-5 at the break and with McFadden and Mark McHugh both outstanding, the Ulster Champions moved into a 1-11 to 0-8 advantage.
Kieran Donaghy's goal led to late Donegal nerves but they held on.
Donaghy's 66th-minute three-pointer looked as though it should have been cancelled out for a square ball as he palmed Donnchadh Walsh's pass to the net.
The goal cut Donegal's lead to 1-11 to 1-8 and when two further points followed from Paul Galvin and Anthony Maher in two minutes, another major row over match officiating appeared in the offing.
However, Patrick Curtin missed a difficult chance to level in the first minute of injury time and the excellent Rory Kavanagh won possession from the resultant kick-out and set up a charging Karl Lacey to notch a vital insurance score.
The game will not go down as one of the classics but it still made for gripping viewing during most of the contest.
Just as they had against Tyrone, the Kingdom players seemed determined to match Donegal's renowned physicality but the other regular tactic of pumping high balls in on Kieran Donaghy's head for much of the contest proved an abject failure.
Eamon McGee was drafted into the Donegal defence to mark Donaghy and did a largely satisfactory job.
It was a high ball at the other end of the field that led to Donegal's goal as McFadden's line ball from about 40 metres eluded everyone - including Kerry keeper Brendan Kealy who appeared to be unsighted by the presence of Michael Murphy and Aidan O'Mahony.
A further Murphy point extended Donegal's lead to 1-2 to 0-1 but the Kingdom responded well with three unanswered points to reduce the Ulster champions' lead to the minimum by the 19th minute.
Colm Cooper appeared to have fashioned a goal chance for himself just before the break but was content to take his point and the superb McFadden's 45-metre free in injury-time left Donegal 1-4 to 0-5 ahead.
McHugh came into his own in the third quarter as he cut out Kerry attacks in his sweeping role and also sortied upfield at pace on a number of occasions.
The Kilcar man's interception started the 39th-minute move which led to a Leo McLoone goal chance but the half-forward blasted over the bar.
Another great McFadden score extended Donegal's lead to three by the 53rd minute and the game looked over with five minutes of normal time left as McBrearty, sub Christy Toye and, inevitably, McFadden tagged on further scores.
But there were suddenly only a kick of the ball between the sides a minute later as Donaghy rose above Paul Durcan to palm Walsh's pass across the square to the net.
There were no major Donegal protests but, while TV replays weren't totally conclusive, it did appear to be a square ball.
Kerry, from looking out on their feet moments earlier, suddenly sensed an unlikely lifeline and the hitherto anonymous Galvin and Maher lofted over further points to leave the minimum between the teams with two minutes left.
But substitute Curtin missed the admittedly difficult chance to level and after Kavanagh won the vital kickout, Lacey stormed upfield to knock over the clinching score.
The win sets up a semi-final meeting with Cork, who impressively hammered Kildare 2-19 to 0-12 in Sunday's other quarter-final at Croke Park.
Donegal: Paul Durcan, Paddy McGrath, Neil McGee, Frank McGlynn; Eamon McGee, Karl Lacey (0-1), Anthony Thompson, Ryan Bradley, Rory Kavanagh, Martin McElhinney, Leo McLoone (0-1), Mark McHugh, Patrick McBrearty (0-1), Michael Murphy (0-3), Colm McFadden (1-5).
Subs: Neil Gallagher for McElhinney (half-time), David Walsh for Bradley 59, Christy Toye (0-1) for McLoone 62, Daniel McLaughlin for McBrearty 70.
Kerry: Brendan Kealy; Marc O Se, Aidan O'Mahony, Shane Enright, Tomas O Se, Eoin Brosnan, Killian Young, Anthony Maher (0-2), Bryan Sheehan (0-1), Paul Galvin (0-1), Declan O'Sullivan (0-1), Donnchadh Walsh, James O'Donoghue (0-1), Colm Cooper (0-4), Kieran Donaghy (1-0).
Subs: Brian Maguire for Brosnan 25, Darran O'Sullivan for Young 32, Johnny Buckley for Sheehan 46, Kieran O'Leary for Declan O'Sullivan 46, Patrick Curtin for O'Donoghue 57.
Referee: Martin Duffy (Sligo).