El Clasico - som av många klassas som den största klubblagsmatchen i världen avgjordes i kväll.
Inför matchen hade serieledande Barcelona tio poäng till godo på gästande Real Madrid för vilka Zinedine Zidane gör sitt första El Clascio-möte som huvudtränare för marängerna.
Det började bäst för Barcelona, som direkt skapade farligheter. I den tionde minuten blev Luis Suarez helt ren i straffområdet och fick mer eller mindre öppet mål, men anfallaren missade bollen.
Efter ungefär 25 minuters spel ville Barcelona ha straff när Lionel Messis framfart stoppades precis vid straffområdeslinjen. Men domaren friade helt.
I paus stod det 0-0.
Tio minuter in i den andra halvleken kom matchens första mål. Gerard Pique ryckte loss i straffområdet och skallade in en hörna bakom Navas i Real Madrids mål.
Kort därefter svarade dock Real Madrid. Ett inspel touchades på en Barca-försvarare och bollen flög då upp i luften, varpå Karim Benzema klippte till på volley med en konstspark. Bollen gick in i nät och betydde 1-1.
Med tio minuter kvar av matchen nickade Gareth Bale in 2-1 till Real Madrid, men domaren dömde bort målet. Walesaren var inte offside, så domaren lär ha dömt bort nätkänningen på grund av Bales kontakt med en Barca-försvarare.
Kort därefter fick Sergio Ramos sitt andra gula kort för dagen och blev utvisad och bara någon minut senare gjorde Cristiano Ronaldo 2-1 till Real Madrid. Ronaldo plockade ner ett inlägg och sköt in bollen mellan benen på målvakten Bravo.
Matchen slutade 2-1 till Real Madrid.
Lagens startelvor:
Barcelona: Bravo - Alves, Mascherano, Pique, Alba - Busquets, Rakitic, Iniesta - Neymar, Messi, Suarez.
Real Madrid: Navas - Carvajal, Pepe, Ramos, Marcelo - Modric, Casemiro, Kroos - Bale, Ronaldo, Benzema.