O Barça saiu na frente com uma cabeçada de Andreas Christensen (6') e Vinicius Junior empatou de pênalti (18').
No segundo tempo Fermín fez 2 a 1 para o time catalão (69'), Lucas Vázquez deixou tudo igual novamente (73') e Bellingham apareceu nos acréscimos para fazer 3 a 2 e garantir o triunfo no Estádio Santiago Bernabéu (90'+2).
"Demos um passo muito importante para vencer esta Liga, temos muita vantagem, mas não temos que relaxar", disse o técnico Carlo Ancelotti, após a partida.
A equipe merengue é líder do campeonato com onze pontos de vantagem sobre os 'blaugranas', faltando seis rodadas para o final de LaLiga depois desta rodada em que a pior notícia para o Barça foi a lesão de Frenkie de Jong.
O holandês teve que sair de maca nos acréscimos do primeiro tempo após levar uma pancada no tornozelo direito ao tentar disputar uma bola dividida com Fede Valverde.