Donegal will face Kerry in the NFL Division One final after they edged a high-scoring clash with Monaghan in sunny Clones.
Shea Malone, Jason McGee and Michael Langan hit 2-13 between them as Jim McGuinness's side clinched their fifth win of the league campaign, which sets them up for a rematch of last year’s All-Ireland SFC decider.
It was closer than many may have expected as an already-relegated Monaghan went close to their first win of the campaign, but they were undone by gifting Malone his second goal in the 56th minute.
Shea Malone and Michael Langan were on target early on for Donegal, with the latter then hitting the net in an explosive opening five minutes by the visitors, who opened up a 1-03 to 0-01 lead while looking capable of scoring at will.
The home team got back into it with a goal from Andrew Woods, who ended the first half with 1-03, but a series of scores from Jason McGee, who now plays his club football in Monaghan with Corduff, kept Donegal ahead.
The looseness of the game could be shown from the fact that the first 25 minutes produced just five frees, but there was some good attacking football on show, not least when Stephen O’Hanlon scythed through to score a brilliant individual goal for Monaghan, who soon had their third major, courtesy of Ryan O’Toole.
Donegal trailed for much of the second quarter, but they struck back just before the hooter, when Jamie Brennan squeezed home the fifth goal of the half to send them in leading by one: 2-11 to 3-07.
Malone, Conor O’Donnell, Peadar Mogan and Langan were among Donegal’s scorers during the third quarter, while two-pointers from Dessie Ward and Rory Beggan kept Monaghan in touch (the latter from a free after the ball had been moved up, perhaps harshly).
Monaghan finished with 11 players on the scoresheet, but they paid the price for a turnover on Beggan that ended in McGee’s punt breaking for Malone to find an empty net.
Ryan Wylie, O’Toole and sub Jack McCarron brought Monaghan back within touching distance, but Langan teed up sub Finnbarr Roarty to seal a four-point win for Donegal.
Monaghan: Rory Beggan (0-2, 1 2-pt-f); Ryan Wylie (0-1), Ryan O’Toole (1-1), Daragh McElearney; Aaron Carey (0-1), Darragh Treanor, Dessie Ward (0-3, 1 2-pt); Louis Kelly (0-1), Karl Gallagher; Fionán Carolan (0-1), Stephen O’Hanlon (1-0), Oisín McGorman; Mícheál Bannigan (0-1f), Andrew Woods (1-3), David Garland.
Subs: Cameron Dowd for Treanor, Shane Hanratty for Kelly (both H-T); Jack McCarron (0-2, 1f) for McGorman (43); Robbie Hanratty for Woods (52); Ryan Mohan for Ward (55).
Donegal: Gavin Mulreany; Mark Curran, Caolán McGonagle, Brendan McCole; Peadar Mogan (0-1), Eoghan Bán Gallagher (0-1), Caolán McColgan (0-1); Hugh McFadden, Michael Langan (0-5, 1f); Paul O’Hare, Jason McGee (0-5, 1 2-pt), Seán Martin (0-1); Conor O’Donnell (0-2), Jamie Brennan (1-0), Shea Malone (2-3).
Subs: Ryan McHugh for O’Hare, Shane O’Donnell for Gallagher (both H-T); Eoin McHugh for Brennan (50); Finnbarr Roarty (0-1) for Martin (55); Seanán Carr for McCole (68); Pádraig Mac Giolla Bhríde for Mulreany (inj., 69).
Referee: Kieran Eannetta (Tyrone).