Donegal delivered further evidence of Rory Gallagher's re-development work by winning comfortably at Kingspan Breffni Park.
The visitors led from gun to tape in notching their second victory of the League campaign, leaving Cavan rooted to the bottom.
Cavan didn't help their own cause. They took an age to get out of the blocks and finished with 13 men: they lost captain Killian Clarke to a red card in the 32nd minute and had used all their subs by the time substitute Cian Mackey was black-carded seven minutes from the final whistle.
Manager Mattie McGleenan managed to extract some positives, saying: "You can build on anything with a group of players who never give up."
Donegal had meandered to a leisurely 0-5 to 0-0 lead before a Seanie Johnston free got Cavan up and running on 22 minutes.
After Clarke saw red for kicking out at Eoghan Ban Gallagher, Donegal were in the driver's seat. Their 0-6 to 0-4 lead at the interval flattered Cavan greatly.
"We should have had eight, nine or 10 points by half-time but I was pleased with the reaction of the boys after the break," said Gallagher.
Eoin McHugh fired home a peach of a goal three minutes into the second half. A brace inside 90 seconds from the impressive Ciaran Thompson made it 1-12 to 0-7 and the game was well over as a contest by the time Mackey was black-carded.
Scorers - Donegal: C Thompson 0-5 (1f ), E McHugh 1-1, J Brennan, M Murphy (3fs) 0-3 each, F McGlynn, H McFadden,M McHugh, R McHugh 0-1 each. Cavan: S Johnston (2fs), G McKiernan (1f) 0-3 each; C Madden, D McVeety 0-2 each, C Brady 0-1.
Donegal - M A McGinley 7; P McGrath 7, N McGee 8, E B Gallagher 7; C Ward 6, F McGlynn 7, E McHugh 7; J McGee 6, C Thompson 8; M Carroll 6, M O'Reilly 7, R McHugh 7; H McFadden 7, M Murphy 7, D O'Connor 6. Subs: J Brennan 7 for D O'Connor (h-t); D McLaughlin 6 for M Carroll (47); M Langan 6 for J McGee (49); E Doherty 6 for H McFadden (55); M McHugh 6 for M O'Reilly (65); P Brennan 5 for E B Gallagher (67).
Cavan - R Galligan 7; F Reilly 5, P Faulkner 6, K Brady 5; Martin Reilly 6, C Brady 5, G Smith 5; K Clarke 5, T Corr 5; M Argue 5, D McVeety 8, C Madden 7; N Clerkin 7, G McKiernan 7, S Johnston 6. Subs: R Dunne 6 for T Corr (14); S Murray 5 for K Brady (h-t); N Murray 5 for M Argue (h-t); C Mackey 5 for S Johnston (44); J Dillon 5 for F Reilly (56); J McCutcheon 5 for C Brady (58).
Ref - C Lane (Cork)