El primer tiempo estuvo lleno de acción, incluyendo un penal anulado por el VAR a favor del Madrid y un gol invalidado a Kylian Mbappé por fuera de juego.
1-0 (Real Madrid): La primera alegría válida llegó con una precisa asistencia de Jude Bellingham que Kylian Mbappé definió cruzado para abrir el marcador.
1-1 (Barcelona): El Barcelona reaccionó rápidamente. Tras una corrida de Marcus Rashford por izquierda, el centro raso fue empujado al gol por el delantero Fermín.
2-1 (Real Madrid): La igualdad duró poco. Apenas cuatro minutos después, un mal despeje defensivo del Barcelona encontró a Jude Bellingham cerca de la línea, quien sentenció el 2-1 que sería definitivo.
La polémica regresó en la segunda mitad con un penal sancionado por mano de Eric García, que Mbappé no pudo convertir gracias a una espectacular estirada del arquero Szczęsny, manteniendo vivo al Barcelona.
A pesar de los nueve minutos de adición, el Real Madrid resistió los envíos aéreos y cerró el triunfo. En el último suspiro, Pedri vio la segunda amarilla y dejó al Barcelona con diez jugadores.
En otros encuentros de la Liga:
Real Mallorca y Levante empataron 1-1 (goles de Pablo Maffeo y Etta Eyong).
Osasuna cayó 3-2 ante Celta de Vigo, perdiendo la oportunidad de acercarse a puestos de copas internacionales.
Rayo Vallecano sumó su segunda victoria consecutiva al vencer por la mínima al Deportivo Alavés con un agónico gol del brasileño Alemão.