Roscommon kept alive their hopes of reaching the final by winning in Inniskeen.
Monaghan had the better of things in the first half, at the end of which they led by 1-8 to 1-5.
Ronan Meegan got the Monaghan goal in the 26th minute after John Coyne had found the net for Roscommon in the 13th minute. Roscommon increased the tempo in the second half, getting off to a great start by hitting 2-1 without reply in the opening two minutes. Monaghan got the margin down to the minimum on a number of occasions, but they could never close the gap completely with Roscommon always able to strike back.
Both sides finished the game with 14 players following second yellow card dismissals for Monaghan's Sean Leonard and Roscommon's Peter Kelleghan.
Man of the Match: John Coyne
Scorers -- Roscommon: J Coyne 1-4, K Connelly 1-2, Gary Fallon 0-5 (4f), P Kelleghan 1-0, J Lawlor 0-2, D Nolan 0-1. Monaghan: S Lambe 0-9 (8f), R Meegan 1-2, E Mac Suibhne 0-3, S Leonard 0-2, B McGuigan 0-1.
Roscommon -- P Dolan 7; S Curley 5, P Kelleghan 5, B Donnelly 5; S Melia 6, M Kelly 7, P Kelly 7; J Moran 6, Gerry Fallon 6; Gary Fallon 7, D Nolan 7, I Delaney 6; J Lawlor 6, J Coyne 7, B Kelly 6. Subs: K Connelly 6 for Gerry Fallon, M Keaveney 7 for S Curley, A Moore 6 for S Melia.
Monaghan -- M McHugh 5; A Lambe 5, P Murphy 5, P Treanor 6; K Boylan 7, P Dowdall 6, D Crowe 5; T Hilliard 6, G Dooley 6; S Lambe 7, S Leonard 7, E MacSuibhne 7, R Meegan 7, G Boyd 7, B McGuigan 7. Subs: S Roche 6 for D Crowe.
Ref -- F Smith (Meath).