Four and no more. For this year at least.

Cork stunned Limerick and the hurling world by ending the holders' pursuit of the first All-Ireland SHC five-in-a-row in a breathless semi-final scorefest.

The Rebels had beaten the champions in the provincial group stage to stay alive but few gave them a chance of repeating the trick today.

Few outside of Cork that is – their fans had faith and travelled in big numbers, making this the highest ever attendance for a semi, the 82,300 full house at Croke Park over double the crowd for Clare's win over Kilkenny on Saturday.

The holders were two points ahead, 0-16 to 1-11, after a frantic first-half that had seen Cork pull five clear through a Brian Hayes goal before Limerick reasserted control.

But Pat Ryan’s team came storming back in the third quarter, scoring 10 points from as many shots in the first 11 minutes of the second half as Darragh Fitzgibbon ran remorselessly and Hayes, Declan Dalton, Seamus Harnedy, Shane Barrett and Patrick Horgan – scoreless in the opening 35 - filled their boots.

They led by seven after 57 minutes but Limerick fought like the great team they are, Aaron Gillane (0-10, 4f) and young subs Adam English and Shane O'Brien helping to cut the gap to two points as four minutes of injury-time loomed.

The tension was suffocating but Cork held out to inflict Limerick’s first knockout defeat in five years and book a rematch of the 2013 All-Ireland decider against Clare.

Gillane hadn't scored from play in his last two games but he remedied that in the opening minute, eventually controlling a trademark Limerick diagonal delivery from Seamus Flanagan to open the scoring. Cork responded with the next four though: Rob Downey finishing a driving run off the hurl, Dalton with their only converted free of the half, Connolly and Fitzgibbon rousing the Rebel fans.

Limerick hit back with three of their own to level. Joyce looked harshly penalised, Cathal O'Neill hit the first of two long-range efforts and Flanagan was on the end of a fine delivery from Tom Morrissey.

Cork were causing huge problems with their pace and directness but having to work harder for their rewards. Veteran Harnedy and Mark Coleman holding off furious Limerick tackling to score, Morrissey showing a consistent Limerick trait of splitting the posts from the sideline.

David Reidy tied it up with the first of his three points in the half but Harnedy snaffled the ball after Horgan hit the post from a free and then, in the 18th minute, came the game's first goal. Barrett cut in from the left and sent a perfect handpass to Hayes, who finished coolly across Quaid.

Brian Hayes scores the only goal of the game

Gillane slipped when picked out yards from goal from a quickly taken free and Hayes had the ball in the net again with a volleyed finish but Connolly’s pass was mistakenly ruled a throw. Hayes added a point but that was the cue for a five-point burst from the holders.

Tom Morrissey and O’Neill again, then a superb catch and long bomb from Byrnes, Cian Lynch with his only score of the day and Gillane tied it up after intercepting a Patrick Collins puck-out in the 25th minute. Just before that, the Cork keeper had pulled off a brave save, blocking a goal-bound shot from the Limerick star with his body.

Hayes, Cork's top-scorer on the day with 1-04, briefly restored the lead but Limerick scored five of the next seven and though Quaid had to tip a Barrett shot over the bar before the whistle, John Kiely’s men looked like they were ready to push on from a two-point half-time lead.

Cork had other ideas though, tearing into Limerick after the restart. The usually dominant Will O’Donoghue couldn’t contain Fitzgibbon while Barrett was tormenting Hannon. The Limerick defence were matched in the air by Connolly, Dalton and Harnedy off long puckouts, though it helped that few of them were directed at Kyle Hayes, who was eventually switched to 6.

They were level within a minute, Fitzgibbon with his second and then Horgan, who had missed a 20-metre free in the first half, finally getting on the board with his 700th career point. O’Neill hit back with his third but that was the last time Limerick led.

Barrett (2), Connolly, and Horgan all tacked on points and the Cork crowd really started to believe as Gillane missed a free from 60m and Dalton sent one over from his own 45.

Byrnes was on target with a long free but the Rebels responded through Connolly and an inspiring brace from Dalton, the first from a quick puck-out after O’Neill shot wide off-balance and the second after Gearóid Hegarty, effectively marked throughout by Ciaran Joyce, had an ambitious shot at goal blocked by Collins and Gillane slipped trying to follow it up.

Gillane stopped the rot but the challengers hit back with another burst of scores, Harnedy pointing twice from the sideline with a Horgan free in between. 1-24 to 0-20 after 51 minutes.

It was blow for blow for the following 15. Hawk-Eye confirmed a Gillane free but denied a Brian Hayes shot and when Kyle Hayes got forward for his first point, Collins just pucked the ball out to Fitzgibbon in the space he had left behind, before Horgan finished off a fine forward surge by Niall O’Leary.

Limerick were in trouble but they had recovered bigger second-half deficits than seven points this year. That quickly became four as O’Brien and English made an immediate impact and Gillane continued to get out to the ball first.

Horgan (free) and Hayes steadied Cork but a run of four by Limerick - which included another free for a harsh throw call and Hegarty’s first and only score of the day after a huge catch by Lynch - made it a two-point game with four additional minutes to play and heart rates soaring all around the stadium.

In the space of a minute, O'Brien missed, Quaid stopped Horgan sweeping home after Barrett had hit the post and Aidan O'Cononor was also off target.

Cork had already called a sub for their 36-year-old marksman when they won a free on the 65. Coleman eventually dropped it short but plenty of seconds had been wasted in the confusion and Limerick’s last desperate lob in was cleared, the final whistle eliciting a deafening roar from the stands.

An appropriately epic semi-final to deny the Treaty a shot at history and for Cork the chance to end a 19-year wait for Liam MacCarthy when they meet Clare in the All-Ireland final on 21 July.

Limerick: Nickie Quaid; Sean Finn, Dan Morrissey, Mike Casey; Diarmaid Byrnes (0-03, 2f), Declan Hannon (capt), Kyle Hayes (0-01); William O'Donoghue, Cathal O'Neill (0-03); Gearoid Hegarty (0-01), Cian Lynch (0-01), Tom Morrissey (0-02); Aaron Gillane (0-10, 4f), Seamus Flanagan (0-01), David Reidy (0-03).

Subs: Shane O’Brien (0-02) for Flanagan (52), Adam English (0-02) for Reidy (54), Darragh O’Donovan for O’Donoghue (54, Aidan O’Connor for T Morrissey (64).

Cork: Patrick Collins; Niall O'Leary, Eoghan Downey, Sean O’Donoghue (c); Tim O’Mahony, Robert Downey (0-01), Mark Coleman (0-01); Ciaran Joyce, Darragh Fitzgibbon (0-03); Declan Dalton (0-04, 2f), Shane Barrett (0-03), Seamus Harnedy (0-04); Patrick Horgan (0-05, 3f), Alan Connolly (0-03), Brian Hayes (1-04).

Subs: Ethan Twomey for O’Mahony (58), Shane Kingston for Dalton (62), Robbie O’Flynn for Harnedy (66), Padraig Power for Horgan (72).

Referee: Thomas Walsh (Waterford)