Atlético Madrid claimed a 2-1 derby victory over Real Madrid after absorbing late pressure, a result built on Grimaldo’s penalty, Giuliano’s decisive second-half burst and Jonathan David’s growing influence in attack.
The three points came after a fiercely contested match in which Madrid created some of their better openings before the interval, but Atlético held their nerve when the contest tightened. Jan Oblak made an important one-on-one stop against Diomandé in the second half, while the home defence withstood a late push despite Real Madrid pulling a goal back through Rüdiger.
Giuliano turns the match
Grimaldo put Atlético ahead from the spot after Giuliano drove into the area and forced the key incident: Huijsen was dismissed and the penalty was awarded. The Spanish full-back, increasingly used in central areas by Diego Simeone, converted with assurance to give Atlético the lead.
Giuliano was Atlético’s sharpest outlet throughout the derby. He worked tirelessly along his flank in the opening period, then delivered the defining attacking contribution after the restart. His precise cross found Jonathan David, who finished in the 59th minute to make it 2-0.
David’s goal was his third in his past three league matches. Beyond the finish, the Canadian forward occupied Madrid’s central defenders, chased lost causes and gave Atlético an outlet during difficult phases.
Real Madrid reduced the deficit through Rüdiger, who had been marked by Robin Le Normand after the defender’s late introduction, but Atlético resisted to close out the win.
Oblak and the defence endure
Oblak provided calm when Madrid threatened before half-time and was required to make a more demanding intervention against Diomandé after the break. He could not keep out Madrid’s goal, but his presence was central to Atlético’s ability to protect their advantage.
Cuti Romero endured a difficult moment in the 37th minute when his challenge on Jude Bellingham was close to bringing a red card. It did not produce his most commanding display since joining Atlético, though he remained combative and helped hold the line alongside David Hancko during Madrid’s strongest spell.
Hancko had some early uncertainty in his understanding with Grimaldo and played a few passes that invited danger. He improved as the game developed, however, and finished with authority; Real Madrid did not particularly target his side and he was not beaten by a dribble during the match.
At right-back, Pubill was primarily occupied by Madrid’s wide threats. He received a yellow card in the 34th minute for stopping a Mbappé counterattack and was withdrawn at half-time, with Simeone choosing not to risk a second booking.
Midfield adjustment brings control
Koke replaced Pubill at the interval and supplied the balance Atlético needed. His arrival strengthened the midfield, allowed Marcos Llorente to shift roles and gave the team greater composure during a second half that ultimately decided the derby.
Llorente again covered vast areas. Starting in a double pivot with Jhonny Cardoso, he also moved towards the right to help against Vinícius and Mbappé, while providing forward passes through the middle. Once Koke entered, he adapted again and seemed to operate across almost the entire pitch.
Cardoso’s contribution was less conspicuous but important, screening the centre-backs, closing passing routes and recovering the ball twice in the first half. Álex Baena also committed fully to Atlético’s pressing and defensive work, although he had less impact in possession. His shot was among Atlético’s first notable opportunities after the interval.
Kang-in Lee grew into the game after a quieter opening half. His ability to keep possession and deliver dangerous crosses offered Atlético relief when Madrid pressed, helping the side manage the closing stages.
Changes maintain Atlético’s threat
Julián Álvarez replaced David in the 61st minute and had opportunities as he sought his first goal of the season. Although he did not score, his movement ensured Madrid could not commit entirely to attack while chasing the result.
Lookman came on for Baena four minutes later, attempting to create one-on-one situations from the left, but found limited space as Atlético focused on protecting their lead.
Le Normand entered for Romero in the 89th minute, with Hjulmand replacing Kang-in at the same time to add further midfield security. The final minutes were uncomfortable, but Atlético’s discipline held as the derby ended 2-1.



