Ross Byrne’s reliable right boot sent defending champions Leinster through to the last-four of the Heineken Champions Cup as his coolly-struck 71st-minute penalty decided a gruelling all-Irish quarter-final clash with Ulster.

A packed-out Aviva Stadium watched the provincial rivals throw everything at each other in a gripping encounter, at the end of which out-half Byrne’s 16-point haul, including an early try, and Adam Byrne’s key 53rd-minute touchdown earned Leo Cullen’s men a semi-final against Toulouse at the Lansdowne Road venue on Sunday, April 21 (kick-off 3.15pm).

Ulster set a frenetic early pace and led 13-11 at half-time despite losing captain Rory Best to an ankle injury. Kieran Treadwell and Byrne swapped early tries with the visitors’ scrum half John Cooney kicking eight points. They should have increased their lead early in the second half, but Jacob Stockdale lost control of the ball in the act of scoring.

Although winger Byrne’s subsequent score put Leinster ahead for the first time, they had to show huge resilience to see out the result, coming through setback of Dan Leavy’s knee injury and Luke Marshall’s levelling five-pointer before Byrne staved off some cramp to land the match-winning kick from the right wing.

Playing European knockout rugby for the first time since 2014, Ulster tore out of the blocks led by the talismanic Best who had an early turnover and then charged down Garry Ringrose’s kick close to the Leinster posts, the loose ball gleefully touched down by lock Treadwell for a converted try with just five minutes gone.

Ringrose redeemed himself with some clever footwork as wind-backed Leinster ominously advanced through 25 pulsating phases, at the end of which Ross Byrne crossed out wide despite Robert Baloucoune’s tackle. Full-back Jordan Larmour’s evasive running was a feature of the build-up, although Byrne’s missed conversion kept the Ulstermen in front.

The 23-year-old Dubliner missed a central 41-metre penalty in the 18th minute, soon after Best’s worrying injury for both province and country. Cooney rewarded a fine aerial take by Stockdale and a meaty Marcell Coetzee carry with three points, while Leinster fluffed their lines in response, Sean Cronin bursting up towards the 22 but then overthrowing the resulting lineout.

Leinster’s accuracy returned on the half-hour mark when Byrne split the posts and then a scrum penalty soon allowed the out-half to briefly nudge the hosts ahead for the first time. He almost teed up a try for Dave Kearney before that, connecting with the winger from a cross-field kick but Baloucoune saved Ulster’s bacon. Michael Lowry and Billy Burns added zip to a late Ulster attack which Cooney topped off with three more points.

Leinster had two big let-offs early on the resumption, the ball going dead after Ringrose was charged down again, and then Stockdale did all the hard work in brilliantly surging clear down the left touchline but the ball agonisingly fell from his fingertips as he stooped to score under pressure from Kearney. It was an individual error which Stockdale and Ulster were left to rue.

Cullen’s charges lifted the tempo decisively, Cronin threatening more in the loose albeit that Cooney foiled a promising first wave. Seizing his chance, man-of-the-match Jack Conan then cut straight through from a ruck to offload for the trailing Adam Byrne to finish off superbly from the right wing. The extras were added by Ross Byrne, establishing a five-point cushion with both benches increasingly busy in this bruising repeat of the 2012 final.

The luckless Leavy, fresh on from the bench, had to be stretched off in a cruel blow just as Ulster turned down a kickable penalty. Their directness was rewarded as they went through 11 phases off a lineout and an excellent delayed pass from Stuart McCloskey opened up an avenue for Burns to put Marshall crashing over on his seasonal debut. Cooney, though, sent the conversion wide at 18-all.

Both sides were really emptying the tank down the final stretch, the Leinster pack using their maul to eke out a penalty and Byrne stood up to the task to slot over from a tough position on the right. Showing their experience, the title holders owned the ball for the remainder, relying on their pick-and-go game to take Ulster through a mammoth 41 phases and confirm their qualification for a third straight European semi-final.