Cork won a first All-Ireland hurling quarter-final since 2013 as they had eight points to spare over Dublin at Semple Stadium on Saturday night.

However, while they finished the game with the same lead that they had possessed at half-time, the Rebels were subjected to some tough questions in the final quarter by a Dublin side that trailed by just four points with five minutes of normal time left.

A goal never looked like materialising for the Leinster finalists against a defence that hasn't conceded a goal in open play since losing to Limerick in the Munster semi-final at the same venue four weeks previously, though, and Cork pushed on with four late points to secure the win.

Coupled with the county's U20 side winning the Munster championship and the minor team reaching the provincial decider, there have been six straight wins for Cork teams, as well as the county winning the 2020 All-Ireland U20 title.

If the run is to continue with victory over Kilkenny in the All-Ireland semi-final next Sunday – Cork are seeking a first championship win in Croke Park since the 2013 semi against Dublin – the sloppiness seen in the second half must be eradicated. Nevertheless, manager Kieran Kingston and his backroom team will be happy at having claimed back-to-back knockout championship victories for the first time since 2015.

Cork had to earn superiority in the first quarter, as Donal Burke’s points ensured Dublin were on top for much of the early proceedings. However, the Rebels had goal chances, with Robbie O’Flynn drawing a great save from Alan Nolan while Jack O’Connor hit the foot of the post from a tight angle and, after Patrick Horgan tied the game at 0-06 each, they moved ahead as Tim O’Mahony fired home following a run where he bored through the middle after O’Flynn’s pass.

Cork manager Kieran Kingston will turn his attention to the challenge posed by Kilkenny

While Burke had the final point before the water-break, Cork had seized the momentum and Horgan and O’Connor were on target as they amassed a six-point lead by the 26th minute as Dublin missed some scoreable opportunities.

As the game moved into injury time at the end of the first half, the lead had been pruned slightly to five following Donal Burke’s eighth point but then Cork struck for their second goal. Again, O’Flynn was heavily involved, running at the Dublin defence before offloading in the direction of Horgan. While the Cork captain couldn’t read the ball, Shane Kingston was on hand to pull home from close range.

It gave Cork a 2-13 to 0-11 half-time lead, though Dublin were back to within six as Conor Burke and Cian Boland had points on the resumption. Cork replied through the excellent Séamus Harnedy and O’Mahony and they looked set to ease clear as a nine-point lead was established on more than one occasion.

To Dublin’s credit, they didn’t wilt and, coupled with sloppiness from Cork, the game remained within their reach. Coming up to the water-break, Danny Sutcliffe and Donal Burke had points to bring them back to seven, 2-20 to 0-19, with Conor Burke getting his second when the action started again.

Horgan and sub Shane Barrett looked to have quelled the revival, but Dublin kept coming and Riain McBride, sub Jake Malone, Donal Burke and Sutcliffe were all on target as they got to within four. It was as close as they would come, with Horgan’s 11th point of the night settling Cork and they secured their place in the last four as Niall O’Leary, sub Alan Connolly and Horgan added late points.

Cork: Patrick Collins; Seán O’Donoghue, Robert Downey, Niall O’Leary (0-01); Ger Millerick, Mark Coleman, Tim O’Mahony (1-01); Darragh Fitzgibbon, Luke Meade; Robbie O’Flynn (0-02), Conor Cahalane (0-01), Séamus Harnedy (0-04); Jack O’Connor (0-03), Patrick Horgan (0-12, 0-08 frees, 0-01 65), Shane Kingston (1-00).

Subs: Shane Barrett (0-01) for Kingston (48), Seán O’Leary Hayes for O’Donoghue (58), Alan Connolly (0-01) for O'Flynn (60), Billy Hennessy for Meade (63), Colm Spillane for O'Leary (70).

Dublin: Alan Nolan; Andrew Dunphy, Paddy Smyth, Cian O’Callaghan; Daire Gray, Liam Rushe (0-01), James Madden; Riain McBride (0-01), Conor Burke (0-02); Donal Burke (0-13, 0-07 frees, 0-01 65), Chris Crummey, Danny Sutcliffe (0-02); Cian O’Sullivan (0-03), Rory Hayes, Cian Boland (0-01).

Subs: Jake Malone (0-01) for O’Callaghan (49), Davy Keogh for O’Sullivan (52), Oisín O'Rorke for Boland (63), Paul Crummey for Hayes (69).

Referee: James Owens (Wexford).