Real Madrid 1-2 Man City
City Secure Three Points With Comeback Win
Erling Haaland was on the score sheet as Man City beat Real Madrid 2-1 at the Bernabeu. Los Blancos started brightly and managed to take the lead through Rodrygo who ended his 32 game scoreless streak but shaky goalkeeping and a rookie mistake meant they didn’t even go into halftime with their lead as Nico O’Reilly tapped it home after Courtois spilled Josko Gvardiol’s header and Erling Haaland scored from the spot after Rudiger fouled him.
Erling Haaland started up top in Man City’s 433 with Jeremy Doku to his left and Ryan Cherki to his right. In the absence of the injured Kylian Mbappe, Vinicius and Gonzalo Garcia started up top in a 442, with Rodrygo and Jude Bellingham occupying the flanks on the right and left respectively.
From minute 1, the atmosphere at the Santiago Bernabéu was charged with expectation as the match kicked off. Real Madrid, under the scrutiny of recent performances, immediately sought to assert dominance. By the 20th minute, the tactical imprint of Xabi Alonso was clearly visible; the home side began as the intense, high press team that the manager clearly wants them to be.
This aggressive approach allowed Madrid to control the early tempo of the game, stifling Manchester City and preventing the visitors from establishing their usual rhythm. During this opening phase, City appeared rattled, struggling to create any meaningful chances as Madrid’s pressing triggers forced turnovers and disrupted their build-up play.
The pressure finally told in the 28th minute when the deadlock was broken. Real Madrid capitalized on a precise counter-attack that cut through the City defense. The move culminated with Rodrygo, who found himself at a tight angle but managed to finish with clinical precision.
The goal was significant not just for the scoreline, but for the player himself, as it snapped a frustrating 32-game goal drought for the Brazilian forward. At 1-0, Madrid seemed to be in the ascendancy, their game plan working to perfection against the English champions.
However, the momentum shifted dramatically as the half progressed. In the 35th minute, Manchester City found an equalizer through an unlikely source. Youngster Nico O’Reilly rose to the occasion, capitalizing on a corner kick to prod the ball home past Thibaut Courtois after the Belgian spilled Josko Gvardiol’s initial header. The goal leveled the score at 1-1 and seemed to settle City’s nerves, bringing them back into the contest against the run of play.
As the first half drew to a close, City completed a rapid turnaround. In the 43rd minute, they were awarded a penalty after a Rudiger foul on Haaland presenting him with a golden opportunity to take the lead. The Norwegian striker made no mistake, converting the spot-kick to net his 55th Champions League goal and putting City ahead 2-1 just before the break.
After falling behind, Real Madrid were kept in the game by a moment of individual brilliance from their goalkeeper right on the stroke of halftime. In the 45th minute, Thibaut Courtois produced a miraculous save to deny Haaland a second goal from a dangerous counter-attacking situation. The danger wasn’t over, as the rebound fell to Rayan Cherki, but Courtois recovered instantly to deny him as well, ensuring Madrid went into the interval with only a one-goal deficit rather than two.
The second half began with renewed urgency from the hosts. Just five minutes after the restart, in the 50th minute, Real Madrid squandered a massive opportunity to equalize. Jude Bellingham found himself with a chance from close range after a pass from Rodrygo, but his attempted chip was poorly executed and sailed too high. It was a “big chance missed” that would haunt Madrid as the game wore on.
Seeking an attacking spark to salvage the game, Alonso turned to his bench in the 58th minute, introducing Arda Güler in place of Gonzalo García. The substitution was a clear signal of intent, but City’s defense remained resolute.
Two minutes later, in the 60th minute, Rodrygo found pockets of space inside the City box again. However, before he could unleash a clear shot, Nico O’Reilly, already the hero at the other end, made a vital recovery run to block the effort, denying Madrid a path back into the game.
Manchester City remained dangerous on the break, and in the 62nd minute, Jérémy Doku nearly extended their lead. The winger cut inside and unleashed a powerful shot that forced another crucial save from Courtois to keep Madrid’s hopes alive.
As the match entered its final quarter, the tactical battle shifted. By the 70th minute, Real Madrid were dominating possession deep in City’s half. However, City had settled into a disciplined block, a defensive structure that frustrated the home side. Unable to break through the lines, Madrid were forced into sideways passing with no end product, struggling to translate their possession into clear goal-scoring opportunities.
Recognizing the need for fresh legs to maintain their defensive intensity and transition threat, Manchester City made a triple substitution between the 70th and 71st minutes. Erling Haaland, Phil Foden, and Rayan Cherki were withdrawn, replaced by Omar Marmoush, Tijani Reijnders, and Savinho, respectively.
Real Madrid continued to push, creating fleeting moments of danger. In the 78th minute, a well-worked move saw Rodrygo set up Vinícius Júnior in front of goal. It was a prime position, but Vinícius failed to test the goalkeeper, putting his shot off frame in a frustrating “near miss”.
Desperate for a goal, Alonso rolled the dice again in the 79th minute, making a bold tactical switch. Defender Raúl Asencio was replaced by the forward Endrick, with midfielder Aurélien Tchouaméni dropping into the defense to facilitate an all-out attack.
The gamble nearly paid off in the 85th minute. Álvaro Carreras delivered an impressive pass to find the substitute Endrick, whose effort beat the goalkeeper but rattled the crossbar. It was the closest Madrid would come to an equalizer in the dying stages. Three minutes later, in the 88th minute, Vinícius Júnior attempted an acrobatic finish, but he was thrown off by the positioning of City goalkeeper Gianluigi Donnarumma and fired his shot wide.
Despite six minutes of stoppage time and generating an Expected Goals (xG) of 1.03 in the second half, Real Madrid’s finishing deserted them completely. Remarkably, they landed zero shots on target throughout the entire second period, a statistic that underlined their inability to breach City’s resilience when it mattered most. The referee blew the final whistle at 90+ minutes, confirming a 2-1 victory for Manchester City and leaving Real Madrid to rue their missed chances and defensive lapses.







