On a dramatic night in Dublin, Troy Parrott struck a first-half brace to secure a remarkable 2-0 World Cup qualifying victory for Ireland against Portugal at Aviva Stadium.
The striker opened the scoring with a close-range header in the 17th minute, and doubled his tally on the stroke of half-time with a fine individual effort.
Portugal were then reduced to ten men in the 59th minute as Cristiano Ronaldo received a straight red card for elbowing Dara O'Shea off the ball, and Ireland comfortably played out the remaining half hour to add three vital points in their push for a play-off.
The opening exchanges carried all the hallmarks of the previous meeting between the sides in Lisbon, Portugal controlling possession, Ireland sitting deep, absorbing the pressure and maintaining the shape to make it difficult to play through.
But Portugal looked determined and decisive and Ronaldo enjoyed two early opportunities, first from a weak backheel, easily collected, then from a setpiece, unable to clear the wall from a perfect position on the edge of the box.
But then, nine minutes into the contest, and with Portugal camped inside the Ireland half, Caoimhín Kelleher launched a missile of a kick deep into the Portugal half, with Finn Azaz in pursuit.
Drifting wide of the box, the midfielder opted for the early ball across the box but it was blocked.
Another Ronaldo shot flew over two minutes later as Jack Taylor just did enough as the ball was pulled back into the striker’s path.
A minute later, and Ireland were back chasing a hopeful ball into the space; again nothing from it, however, the gameplan was finally starting to reveal itself.
Then an interception in midfield allowed Seamus Coleman send Parrott flying up the right. Another squared ball blocked with Ogbene flying forward, but the momentum had certainly shifted.
Troy Parrott ignites the Republic of Ireland's World Cup qualifying hopes with this goal after a great assist from Liam Scales.
— RTÉ Sport (@RTEsport) November 13, 2025
📺 Watch on @RTE2 and https://t.co/XnOP6grnB7
📻 Listen on @RTERadio1
📱 Live updates https://t.co/TgtjK2dsDN pic.twitter.com/TsymFMfgRz
Three minutes later, Ireland would take the lead, and while this time it came from the left flank, it was a ball in behind that caused the trouble.
Liam Scales whipped it around the Portugal last line and while intercepted, the backpass put the keeper under pressure, allowing Parrott to block the clearance, with calls for a penalty falling on deaf ears.
However the corner would pay dividends as the setpiece was drilled to the back post for Scales, who looped around and nodded it back across the face for Parrott to stoop and head home.
Jubiliation on the pitch and throughout the packed arena as the Lansdowne Road roar made a very timely return as Ireland took a shock lead.
Buoyed by the goal, Ireland went right back on the attack as Ogbene pulled a clever ball back to Azaz on the edge but while the shot was on target, it flew right at the Diogo Costa.
Portugal showed no cohesion going forward and suddenly, long shots appeared to be their most viable route to goal, highlighting the frustration of conceding.
In the 27th minute Ronaldo had another half-chance as he took a touch, turned and shot, but the connection was poor.
Another Ireland burst forward as Parrott raced through the middle – this time his touch letting him down and he had to check back, and then in the 37th minute, the home side almost doubled the lead as Ogbene was sent racing through following a great ball from the left.
The speedy forward got onto the ball and worked his way into the left corner of the box before cutting inside and curled a fine effort beyond the keeper, however, the ball came back off the post and the arriving Parrott was unable to help it home.
Portugal finally returned to their patient passing game, and they eventually looked back to their old selves looking to restore parity as half-time approached.
Somehow in the 39th minute, Ireland managed to keep the ball out after a good 30 seconds of pinball around the box, starting with a Kelleher save from a Vitinha shot and ending with a corner as Ireland eventually got the ball away. Another chance would follow from the set-piece but Dalot blasted over.
Then in the 43rd minutes, Felix crashed a volley goawards from just inside the box, but Jake O’Brien stood tall and blocked the effort before Dalot again missed the target.
Troy the boy is Ireland's man. Dream stuff for Ireland, Parrott makes it two in what is proving to be a memorable performance by team and individual
— RTÉ Sport (@RTEsport) November 13, 2025
📺 Watch on @RTE2 and https://t.co/XnOP6grnB7
📻 Listen on @RTERadio1
📱 Live updates https://t.co/TgtjK2dsDN pic.twitter.com/HgEJaXLVSZ
Ireland, in truth were hanging on for half-time, but instead, they somehow worked the ball up the pitch and doubled their lead.
Just a tempting little hooked ball over the top for Parrott to race on to, and the striker had both the confidence and the ability to run at Ruben Neves before opening up the space to slam the ball into the corner of the net.
A remarkable end to the half as Ireland found themselves with a two-goal cushion heading down the tunnel setting the scene perfectly for the second act.
Two substitutions were Roberto Martinez’s reaction at the break and it almost had the right effect as Vitinha should have scored within two minutes of the restart following substitute Renato Veiga flicked header to the back post, but the midfielder was unable to help it home.
Portugal had all the possession but seemed unable to create nor penetrate this well-organised, disciplined Ireland unit – a wild Ronaldo shot the only effort of note and that was well off target.
The frustration had been building throughout this Portugal performance and yet no one could predict that it would lead to Cristiano Ronaldo crashing an elbow into the body of Dara O’Shea as another ball into the box was cleared.
Cristiano Ronaldo is given a red card after a VAR review for an elbow
— RTÉ Sport (@RTEsport) November 13, 2025
Mimicked tears, a clash with the Ireland manager and an all-time send-off from the crowd follow. Dublin is no longer "lovely" for him
📺 Watch https://t.co/XnOP6grnB7
📱 Live updates https://t.co/TgtjK2dsDN pic.twitter.com/E6IjPgPvaf
The referee sensed that Ronaldo was the culprit and brandished a yellow, however, he was advised to pause play a moment longer before being summoned to the screen to see in full view the malicious off the ball manoeuvre.
There really was no other choice as yellow became red and Ronaldo finally left the field of play, happy to take on the role of pantomime villain as he made a beeline towards the Ireland manager who had urged officials ahead of the game not to let the global icon referee the game – it did eventually end with a handshake, but Portugal were down to ten men and had a mountain to climb.
A man extra, yet Ireland remain patient, happy to sit back, however, there was suddenly a lot more space up the pitch, and the introduction of Adam Idah offered a real outlet.
And it led to a decent look at goal for Azaz who had joined in the attack following a powerful run forward by the striker, and while space was made to get the ball onto his left foot, the shot deflected wide.
Into the last ten minutes, and while Portugal still worked the ball forward, it was really lacking the intensity of their earlier play and Ireland were looking very comfortable as they edged towards a remarkable victory.
Festy Ebosele had also come on to add another injection of energy and it certainly helped the home side to take that pressure off and move the play forward.
Portugal were not done yet, however, and sensed a chance to force some late pressure as Ireland emptied their bench and were taking a moment to return to their organised shape.
Two great chances within a minute, as first Conor Coventry, on for his international debut, blocked a Dalot strike before Kelleher made a fine save to deny Goncalo Ramos.
Then in the 90th minute, substitute Mikey Johnston had a chance to seal the victory as he got on the ball inside the box, however, his shot was blocked.
Portugal have a habit of denying Ireland in injury-time, and the officials handed them seven minutes to get something out of the game.
Ruben Neves grabbed the winner in Lisbon, however, this time he was denied by the Ireland keeper who got down well to stop the shot from the edge of the box, and a minute later, Ramos slammed an effort goalwards, but it was high and wide.
And that was about all that the ten men could muster as time elapsed, and the crowd celebrated accordingly to hand the team the perfect send off to Budapest in the group decider on Sunday.
Republic of Ireland: Caoimhin Kelleher; Seamus Coleman, Liam Scales (Jimmy Dunne 86), Nathan Collins (capt), Dara O'Shea, Jake O'Brien; Josh Cullen, Jack Taylor (Conor Coventry 68), Finn Azaz (Festy Ebosele 79), Chiedozie Ogbene (Mikey Johnston; Troy Parrott (Adam Idah 68)
Portugal: 1 Diogo Costa; 20 João Cancelo (Nélson Semedo, 5 Diogo Dalot, 3 Rúben Dias, 14 Gonçalo Inácio (Renato Veiga HT); 23 Vitinha, 15 João Neves (Goncalo Ramos 78), 21 Rúben Neves; 10 Bernardo Silva (Francisco Trincão 63), 11 Joao Felix (Rafael Leao 63), 7 Cristiano Ronaldo
Referee: Glenn Nyberg (SWE)