Galway finished strongly in a tense finale to overcome Donegal and book their spot in a second All-Ireland final in three years.
With 10 minutes remaining, a tit-for-tat encounter hung on a knife-edge, the scoring-rate having fallen precipitously after an open first half.
The hinge moment occurred with five minutes remaining. After a rousing Donegal turnover, Ciarán Thompson dived on the ball on the ground, referee Brendan Cawley penalising the midfielder.
The big screen operator in Croke Park was momentarily asleep at the wheel, the tight call being broadcast around the stadium. The replay probably vindicated the decision but it was tight and the Donegal crowd struck up a round of boos, while Ryan McHugh and his teammates pointed agitatedly at the screen.
Cawley responded by bringing the free in even closer. Finnerty tapped it over to nudge Galway in front at a crucial moment.
Donegal's methodical, uber-modern attacking game had been in perfect motion either side of half-time but it began to creak as the game ticked towards a finish.
Jim McGuinness, who suffered his first semi-final defeat since the now famous game in 2011, admitted afterwards that his team "ran out of steam" near the end, suffering from a want of experience having not been this deep in the competition since the end of his previous managerial stint in 2014.
Galway were more purposeful in the endgame, with the hugely influential Dylan McHugh driving forward continually and copper-fastening his credentials as a Footballer of the Year candidate.
Paul Conroy - who scored a bizarre goal in the first half, after his poorly struck shot deceived Shaun Patton - had a chance to double the lead, the ball rebounding off the inside of the post. Damien Comer, looking increasingly wrecked at this stage, slapped the ball towards goal but it didn't have the power to beat Patton.
However, the Ulster champions were unable to work another score and turned the ball over again in the final third. Galway worked it carefully upfield, with centre-back Liam Silke, not a renowned point-taker, curling over the critical score to double the lead entering injury-time.
Donegal were suddenly out of ideas. Michael Langan, peerless with his shooting boots for so much of the game and finishing with 0-04 from play, sliced a shot miles wide. As the midfielder put his head in his hands, on the sideline, McGuinness turned away dejected.
There was time for a couple more hopeful punts into the mixer but the crowded Galway defence dealt with the bombs to secure a passage to another All-Ireland final and a meeting with Armagh in a fortnight's time.
The air was pregnant with opportunity beforehand, with Dublin and Kerry already taken out of the equation. After a season of below par attendances, today was distinctly above par, two counties from the western seaboard producing a 67,000 crowd.
The last time the pair had met in an All-Ireland semi-final was a relic of the era when a Connacht or Ulster side could conceivably only make a final if they played each other in the last four.
Val Daly snatched an opportunistic late winning goal for Galway and Brian McEniff, then in the third of his five separate stints as Donegal manager, spent a sleepless night on a Dublin park bench staring into space, contemplating what had happened.
The landscape had changed considerably by 2024, with a Connacht or an Ulster side guaranteed to take Sam at the outset.
Before the off, the Galway players assembled in a V formation reminiscent of the England rugby team in 2019 during the pre-match tribute to the late John O'Mahony on the big screen.
The game was a clash of styles. Galway left their attacking trident of Comer, Shane Walsh and Rob Finnerty close to goal and were inclined to vary their approach, mixing probing, patient passing when faced with a set defence but often looking to kick direct especially on quick counter-attacks.
As usual, Connor Gleeson's default on kickouts in the first half was the long route, typically to Matthew Tierney on the right flank. This yielded a few early scores for Galway, with Rob Finnerty, the liveliest of the inside trio, clipping over a brace of points in the first 15 minutes.
By contrast, Donegal were resolutely methodical, gradually working opportunities through elaborate hand-passing moves. After a slow start, the Ulster champions slipped into their groove, converting 10 of 14 scoring opportunities and looking the more well-oiled machine in the first half.
With the much-vaunted wing-backs of Peadar Mogan and Ryan McHugh quietened in an attacking sense, their midfield duo of Michael Langan and Ciarán Thompson fell into the role of designated shooters for the afternoon.
The pair accounted for half of Donegal's 0-10 tally in the first half, Langan in particular to the fore, landing 0-03 from play, all from distance.
Oisín Gallen, the heir to Paddy McBrearty as their chief scoring forward, found his feet after an early wide. The full-forward swung over two from play in the first half, the first of which edged Donegal in front for the first time in the 14th minute.
Galway's more direct approach generated more excitement but their shooting was frequently off-kilter in the first half, with Finnerty, Comer and Maher all frittering away opportunities.
With the scores tied at five apiece, Galway found - or stumbled upon - the game's only goal.
Once again, the in-vogue attacking gambit of 2024 - the poorly struck point attempt - proved its worth. At the end of a lateral, go-nowhere move, Paul Conroy found a hint of space for the shot. He didn't connect cleanly but instead sent the ball fizzingly dangerously into the square.
Tierney was loitering in the vicinity and darted across Patton's eyeline at a pivotal moment, failing to make any contact with the ball but enough of a nuisance to deceive the keeper. The ball rattled off the turf and past a startled Patton and into the roof of the net.
Galway have a goal and it's Paul Conroy whose shot appeared to be kicked short but managed to make its way all the way into the Donegal net
— The Sunday Game (@TheSundayGame) July 14, 2024
📲 Updates: https://t.co/UfQR6SMCCe
📺 Watch live: @RTE2 & @RTEplayer: https://t.co/AKAre5FHdN
📻 @rteradio1 pic.twitter.com/NnPeETnFbs
In the short-term, Donegal weren't unduly phased by the sucker punch goal and outscored Galway 0-05 to 0-02 for the remainder of the half.
Paddy McBrearty got in on the scoring act, hoisting up a towering shot which had Gleeson on edge but wound up on top of the net.
The free-scoring first half ended with a bit of midfielder tit-for-tat, Langan landing two elegant points either side of a fine Conroy effort.
The scores were tied at 1-07 at 0-10 at the break, though the game was running more to Donegal's beat.
The first 15 minutes of the second half continued in the same breakneck fashion, both teams trading points with abandon.
As the landmark quarter-final win over Dublin, Galway started the second half with blunt purpose. Tierney powered forward from the throw-in, feeding Comer with a fist pass, the full-forward being bundled over. Walsh curled over the resultant free, his third and final point of the day.
Gallen and Shane O'Donnell responded with points for Donegal and the Ulster champions appeared to have the initiative at this point. However, their scoring efficiency would soon fall off a cliff.
Another long bomb into Comer eventually yielded a point, Patten coming and flapping at the ball, with Finnerty rescuing the ball before it crossed the end-line. Quarter-final hero McDaid struck his only point to level it up.
Donegal were still in their set groove, another composed move ending with McBrearty swinging over another point to nudge them ahead on 43 minutes.
The rampant McHugh, who clipped over the first score of the match, fisted over from a tight angle to level the game, before his half-back partner Liam Silke got in on the act to push them in front again.
On 49 minutes, Eoghan Bán Gallagher raided forward from the right wing, earning a free after a tangle of legs with the chasing Maher. McBrearty dispatched the free but it came at a cost, with Gallagher forced off injured for the remainder.
There followed a 10 minute lull on the scoring front, with Donegal suddenly unable to create openings and now coughing up turnovers.
The Galway crowd thought Comer had put them ahead with would have been his only score with 15 minutes remaining but the 2022 All-Star cast his eyes to heaven as Hawkeye was sent for, the 'Níl' verdict inevitable.
The Connacht champions would eventually break the 10-minute scoring drought with a well-worked point, Johnny Maher - who was occasionally sloppy in possession - opting, in the circumstances, to fist the point this time rather than go for the goal.
It's been nip and tuck but Galway have a sliver of breathing room after Liam Silke's 70th minute point
— The Sunday Game (@TheSundayGame) July 14, 2024
📲 Updates: https://t.co/UfQR6SMCCe
📺 Watch live @RTE2 & @RTEplayer: https://t.co/AKAre5FHdN
📻 @rteradio1 pic.twitter.com/gtbvgaswio
Langan would respond immediately, adding to his stellar display with a fourth point of the afternoon on 62 minutes but it was their only score from play from the 43rd minute on. McGuinness ruefully observed afterwards that five scores from 14 attempts in the second half was the game's decisive stat.
As desperation increased, several balls were dropped into Gleeson's clutches, while, critically, Gallen missed an eminently scorable free from the left hand side.
There was a tentative sense that the momentum had shifted towards Galway. Once Thompson was collared for touching on the ground, the westerners grabbed the initiative and never lost it until the finish.
With time running down, Donegal discarded their attacking template and hoiked in a few quarter-to-five balls but it was to no avail.
McGuinness' glorious return to the hotseat doesn't end with the ultimate fairytale, though it's a world away from 12 months ago.
Galway, whose own prospects looked bleak during an injury-ravaged spring, find themselves back in an All-Ireland final, with a chance to notch No. 10 in a fortnight.
Donegal: Shaun Patton; Ciaran Moore, Brendan McCole, Eoghan Ban Gallagher; Ryan McHugh, Caolan McGonagle (0-01), Peadar Mogan; Ciarán Thompson (0-02, 1m), Michael Langan (0-04); Caolan McColgan, Shane O'Donnell (0-02), Jason McGee; Patrick McBrearty (0-03, 1f), Oisin Gallen (0-03), Aaron Doherty.
Subs: Daire Ó Baoill for McColgan (29), Jeaic Mac Ceallabhuí for Gallagher (47), Hugh McFadden for McGee (59), Niall O'Donnell for McBrearty (59), Odhrán Doherty for Aaron Doherty (62)
Galway: Connor Gleeson; Johnny McGrath, Sean Fitzgerald, Johnny Glynn; Dylan McHugh (0-02), Liam Silke (0-02), Seán Mulkerrin; Paul Conroy (1-01), Céin Darcy; Matthew Tierney, John Maher (0-01), Cillian McDaid (0-01); Rob Finnerty (0-04, 2f), Damien Comer, Shane Walsh (0-03, 2f).
Subs: Johnny Heaney for D'arcy (56), Daniel O'Flaherty for Walsh (62), John Daly for Fitzgerald (66), Kieran Molloy for Comer (72), Tomo Culhane for McDaid (72)