Jack O’Brien and Lorcan Connor grabbed goals late in the first half, just after Monaghan lost midfielder Conor Lavelle to a yellow/black card combination.
They were just two points behind at that stage, but with Ryan McHugh running the show for Donegal, they made the extra man count in the second period, and were never in danger of losing this one.
Ciarán Thompson and Connor added further goals in the second half as Maxi Curran’s side coasted through to meet Tyrone in next week’s final.
A difficult start for Donegal was compounded by the loss of centre back Darragh Mulgrew on a black card after 14 minutes.
The scores were tied at a point apiece at that stage, Darach O’Connor having cancelled out Ryan McAnespie’s opener.
With 22 minutes played they were still deadlocked on 0-1 to 0-1, but Donegal finally unlocked a stubborn Monaghan defence with a devastating 2-4 salvo in the space of six minutes.
Farney resistance crumbled after they were reduced to 14 men when midfielder Conor Lavelle, who had already been booked, picked up a 25th minute black card.
Corner backs Conor Morrison and Jack O’Brien combined for the opening goal on 27 minutes, the latter punching to the net at the far post.
And two minutes later, Ryan McHugh spooned the ball cleverly into the path of Lorcan Connor, and he finished clinically past David Kirk.
Donegal led by 2-5 to 0-2 at the break, but Monaghan gave themselves a lifeline with a goal 10 minutes into the second half, Conor McCarthy finishing to the net from Kevin Loughran’s long delivery.
That was as good as it was to get for Finbarr Fitzpatrick’s side, as Donegal finished them off with another blitz at the beginning of the final quarter, including a spectacular Ciaran Thompson goal.
They finished the job off with a second Connor goal seven minutes from the end, punched home at the far post.
L Connor 2-0, C Thompson 1-2, J O’Brien 1-0, H McFadden 0-2 (1f), E McHugh, D O’Connor, E McGrath, W Gillespie, D McDaid 0-1 each.
C McCarthy 1-1 (0-1f), F McGeough (f), F McMahon (f), R McAnespie, D Ward, 0-1 each.
D Rodgers, C Morrison, C Parke, J O’Brien, R McHugh, D Mulgrew, E Gallagher, T McCleneghan, C Thompson, O Crawford, D McDaid, D O’Connor, L Connor, H McFadden, E McHugh.
E McGrath for Mulgrew (BC), W Gillespie for Crawford, S McBrearty for McGrath, McGrath for McDaid, J Brennan for O’Connor, C O’Donnell for McCleneghan
D Kirk, R Wylie, M Murnaghan, K Loughran, D Ward, S Conlon, F Malone, C Lavelle, B Greenan, R McAnespie, D McAllister, P Keenan, C McCarthy, F McGeough, F McMahon.
D Meegan for McMahon, A Treanor for Conlon, M McCarville for Keenan
K Trainor (Down).