Shamrock Rovers completed a first League of Ireland and FAI Cup double since 1987 with a 2-0 victory over 10-man Cork City at Aviva Stadium.
It's a seventh domestic double this century but a first for the country's most successful club thanks to a second-half brace from Rory Gaffney.
With five leagues in six seasons already secured, Rovers were already the dominant club of the era, this triumph only acting to reinforce the point.
While Cork had managed two draws with Rovers at Turners Cross this season, their record in the capital was not good - a pair of 4-1 defeats - and the trip to the east coast once against proved a step too far.
City had chances in both halves as they looked to cause one of the great cup final shocks, but Harry Nevin's sending off just before the break made the task even tougher in this decider between the teams which finished bottom and top in the Premier Division of the SSE Airtricity League.
Shamrock Rovers 2-0 Cork City
— RTÉ Sport (@RTEsport) November 9, 2025
⚽A brilliant finish from Rory Gaffney, his second goal in five minutes as Rovers close in on a league and cup double
📱https://t.co/atzKJF80Mx
📺https://t.co/XnOP6grnB7
📻https://t.co/3DckWGgggp pic.twitter.com/XchOcl9m1U
The victory for Rovers also secures European soccer for their great rivals Bohemians, who finished fourth in the league, for the first time in five years.
Stephen Bradley made five changes from the Rovers team which had secured a potentially precious Conference League point against AEK Athens on Thursday, as Josh Honohan, Matt Healy, Danny Grant, Aaron McEneff and Gaffney were all drafted in.
And the changes, coupled with the tiredness of that game in Greece, saw Rovers come out looking a bit leggy in the first half.
A corner routine from Cork saw Darragh Crowley test Ed McGinty from 25 yards out, with the Rovers keeping seeing it late as it flew through a packed penalty area.
And City went even closer a short time later as Alex Nolan's low cross reached Seani Maguire at the back post, with the former Ireland international forcing McGinty down low to make the save at his left post.
Cork were frustrating Rovers, with a Pico Lopes headed chance - which went high and wide - the best Bradley's side could muster in the opening 20 minutes.
The double chasers were seeing more of the ball, but Cork were looking relatively comfortable, and happy to try to hit the Hoops on the break.
Just after the half hour mark, Graham Burke created some space for himself 30 yards from the City goal, but his shot was only troubling for Conor Brann in that it bounced just in front of him. Other than that, it was a comfortable save.
Not long afterwards, Brann had another straightforward stop to make from Matt Healy's dropkicked effort - less than a day after the Irish rugby team beat Japan at the same venue - from 25 yards out.
And, as Rovers began to push City further and further down the field, Lopes got on the end of a Dylan Watts cross, but the World Cup-bound defender could only manage a glancing header, which flew past the right post.
Shamrock Rovers 0-0 Cork City
— RTÉ Sport (@RTEsport) November 9, 2025
🟥Cork City are down to 10 men as Harry Nevin is dismissed for a poor challenge on Josh Honohan
📱https://t.co/atzKJF80Mx
📺https://t.co/XnOP6grnB7
📻https://t.co/3DckWGgggp pic.twitter.com/Z5R2Ma1XJL
Josh Honohan moved from Turners Cross to Tallaght two years ago and he was getting plenty of it from the Rebel Army in the Lansdowne Road end. As the game wore on though, Rovers were managing to get him in space down that left flank more and more often.
But it was in his own half that Honohan would be caught by Harry Nevin shortly before half-time, as Cork were reduced to 10 men. It was a poor challenge by Nevin, straight into Honohan's shin, with the defender quickly shown a straight red card by referee Paul Norton.
Before the break, Brann had to make one more save, getting down low to turn a Burke free kick away, but the sense was, as the teams headed for the dressings rooms, that it was only going to go one way.
Smoke from flares delayed the start of the second half by five minutes but it was Cork who settled into things more quickly.
They were nearly ahead five minutes in as Fitzpatrick's floated cross picked out Freddie Anderson, whose header forced McGinty down low to his right to make the save, with Maguire offside as he gathered the rebound.
Gaffney had the ball in the net on the hour mark, although he was a couple of feet offside, but Rovers were once again getting on top in the game.
They were all over Cork, as a Healy header was blocked by Fiacre Kelleher, falling for Honhan eight yards out, but he got it all wrong as the ball slid off the outside of his right boot.
But the goal arrived only a few minutes later.
Anderson had the ball stolen from him by Watts, whose deep cross was drilled into the danger area by Danny Grant. Gaffney had to keep it low, and he did just that to send the Havelock Square End into rafters.
Shamrock Rovers 1-0 Cork City
— RTÉ Sport (@RTEsport) November 9, 2025
⚽Rovers finally make the breakthrough. Freddie Anderson has his pocket picked in his own area before Danny Grant tees up Rory Gaffney for the opener
📱https://t.co/atzKJF80Mx
📺https://t.co/XnOP6grnB7
📻https://t.co/3DckWGgggp pic.twitter.com/HvXNAx3Zbt
And it was over little more than five minutes later as Rory Feely lost the ball to Gaffney out right. The Tuam native still had plenty to do, but he got close to goal, before finishing through the legs of Brann.
Danny Mandroiu came on but almost had to go off injured in the only slightly sour note for the Hoops in front of a healthy crowd of over 35,000 on Lansdowne Road.
A season that started with defeat to their biggest rivals in front of a record crowd for the league, at the same venue, ends with the Hoops having won all before them.
Shamrock Rovers: Ed McGinty; Josh Honohan (Lee Grace 88), Pico Lopes, Dan Cleary, Cory O'Sullivan, Matt Healy, Danny Grant, Dylan Watts (Danny Mandroiu 78 (Connor Malley 84)), Aaron McEneff, Graham Burke (Sean Kavanagh 88), Rory Gaffney (John McGovern 78).
Cork City: Conor Brann; Fiacre Kelleher (Kaedyn Kamara 70), Freddie Anderson, Rory Feely, Evan McLaughlin (Ruairí Keating 75), Darragh Crowley, Josh Fitzpatrick, Harry Nevin, Greg Bolger (Matthew Murray 70), Alex Nolan (Conor Drinan 46), Sean Maguire.
Yellow cards: Ger Nash (off the field) 61.
Red cards: Nevin (43).
Referee: Paul Norton.
Attendance: 35,252.