Derry made it three wins from three as they march on to face Limerick in a Division 3 promotion play-off while Cavan will vie with Wicklow to avoid relegation following this thriller at a sunny Kingspan Breffni.

The sides served up a free-flowing spectacle from the off here. Derry led by a point, 1-07 to 1-06, at the end of an enthralling first half which ebbed and flowed and that trend continued throughout.

Early on, Rory Gallagher's men were irresistible as they raced into a 0-5 to 0-0 lead in the opening nine minutes but the Ulster champions belatedly hit their stride and would go on to out-score the visitors by 1-06 to 0-01 in the following 15 minutes.

By half-time, Derry had edged into a one-point lead which they stretched to seven in the third quarter before a trademark palmed goal from Martin Reilly dragged Cavan back into it. However, Derry did enough late on, with the brilliant Shane McGuigan landing a magnificent free from the sideline to help them home with two to spare.

McGuigan opened the scoring just 15 seconds in and added a free before midfielder Emmett Bradley landed the first of his three points from play with a terrific strike. Cavan were pinned back, Niall Loughlin landing one from play and a sweetly-struck 45 to put five between them.

By then, Derry had carved out the first goal chance of the contest when Ciaran McFaul picked McGuigan out but Ray Galligan was equal to the Slaughtneil man's effort.

Cavan finally got off the mark in the 10th minute with a clever steal and finish from 18-year-old Caoimhan McGovern and Graham’s side then enjoyed success with their high press, reeling off points from Oisin Kiernan, Ray Galligan (45) and the impressive Luke Fortune.

In the meantime, Galligan had saved superbly from Gareth McKinless as Cavan lived dangerously. Derry were 0-05 to 0-04 up at the first water break and stretched that lead through McGuigan but Cavan suddenly began to hum again, McGovern setting Niall Murray up for a fisted point and then, on 25 minutes, Gearoid McKiernan rising highest to flick Reilly’s delivery to the net.

Ciaran McFaul of Derry is tackled by Oisin Kiernan of Cavan

The big Cavan Gaels man added a free to put Cavan, implausibly given the balance of play, three up but Derry’s response was emphatic when Loughlin drove at the Cavan defence and sent a great finish to the roof of the net.

A 45-metre free from McGuigan rounded off the first-half scoring and Derry would pick up where they left off on the restart, landing seven of the next eight points.

Heron sent over the first, McGuigan – after a sharp turn – the next and then two Bradley points sandwiched a McGuigan free to leave it 1-13 to 1-06.

Fortune, with a super score, and Conor Glass exchanged white flags as play got underway in the final quarter.

Just as it seemed Gallagher’s side would ease home, however, Cavan came again. Frees from McKiernan (two) and Galligan (from 50 metres) made it a four-point game and after a Kiernan effort struck the post, Padraig Faulkner centred and Reilly was on hand to palm home to make it 1-14 to 2-10.

Cavan created another glorious goal chance moments later but All-Star full-back Faulkner couldn’t steer it home.

True to form, McGuigan kicked another stylish point and although sub Cormac Timoney split the posts with a classy left-footed effort, McGuigan had the final say with that late free from the right wing.

The result from Brewster Park – a draw between Longford and Fermanagh – meant that the Erne men advance and Cavan must take on Wicklow at a neutral venue next time out.

Cavan: Raymond Galligan (0-2, 1f, 45), Killian Clarke, Padraig Faulkner, Chris Conroy, Cian Reilly, Oisin Kiernan (0-1), Luke Fortune (0-2) Conor Brady, Killian Brady, Martin Reilly (1-0), Gearoid McKiernan (1-3, 3f), Caoimhan McGovern (0-1), Niall Murray (0-1), Patrick Lynch, Conor Madden

Subs: Michael Argue for Murray (ht), Conor Smith for McGovern (ht), Thomas Edward Donohoe for Conroy (49 mins), Thomas Galligan for Lynch (53), Cormac Timoney (0-1) for Madden (53), Stephen Murray for K Brady (53), Oisin Pierson for Donohoe (70)

Derry: Oran Lynch, Christopher McKaigue, Brendan Rogers, Padraig McGrogan, Paul McNeill, Gareth McKinless, Conor Doherty, Conor Glass (0-1), Emmett Bradley (0-3), Ethan Doherty, Niall Loughlin (1-3, 1f, 45), Ciaran McFaul, Benny Heron (0-1), Shane McGuigan (0-8, 4f), Paul Cassidy

Subs: Oisin McWilliams for McKaigue (temp, 40 mins), McKaigue for McWilliams (43), Michael McEvoy for Rogers (60), McWilliams for Heron (62), Ben McCarron for McGrogan (64), Jack Doherty for P Cassidy (68), Shane Downey for Loughlin (70)

Referee: Padraig Hughes (Armagh)