
Real Madrid took an early 2-0 lead, thanks to two goals from Mbappe within the first 14 minutes. However, Barcelona responded emphatically, scoring four goals before halftime , Eric Garcia and Lamine Yamal each netted one, while Raphinha struck twice.
Mbappe added another goal with 20 minutes remaining, taking his tally for the season to 39 goals across all competitions, the highest ever for a Real Madrid player in their debut season. Barcelona's Fermin Lopez had a goal ruled out for handball in the dramatic closing moments.
The win extended Barcelona's lead over their rivals to seven points, with only three matches left in the season.
Hansi Flick opted for an unchanged Barcelona lineup after their grueling Champions League semi final defeat to Inter Milan earlier in the week, but they appeared sluggish in the early stages.
Mbappe opened the scoring from the penalty spot after being fouled by Barcelona goalkeeper Wojciech Szczesny, and then doubled his tally, running onto a perfectly timed through ball from Vinicius Junior behind Barcelona's high defensive line.
As Mbappe celebrated, he likely didn't anticipate what was to come at the Lluis Companys Olympic Stadium.
Garcia pulled one back for Barcelona with a header from a corner in the 19th minute, and just moments later, 17-year-old Lamine Yamal showcased his brilliance, curling a stunning shot into the bottom corner of Thibaut Courtois' goal.
Barcelona continued to press relentlessly and took the lead less than two minutes later when Raphinha found space on the left side of the box after a mix-up between Mbappe and Lucas Vazquez, firing a shot past Courtois.
The Brazilian then nodded over a cross from Yamal, but soon after, he scored a second when he converted Ferran Torres' cut-back following a steal from Vazquez.
Mbappe thought he had earned a penalty shortly before, but a VAR review showed Jude Bellingham was marginally offside.
The second half saw Barcelona continue their dominant play, with Raphinha charging into Real Madrid's half and laying off a pass for Yamal to tap in, only for the Brazilian to be flagged offside.
Real Madrid appeared to tire as Mbappe completed his hat trick from close range, moving two goals clear in the La Liga top scorer race. At the other end, Raphinha missed a golden opportunity from just a few yards out.
Victor Munoz, Madrid's 21-year-old substitute, fired over the bar when through on goal, and Mbappe forced Szczesny into a smart low save.
Lopez thought he had added a fifth for Barcelona, but a VAR review ruled the goal out for handball in the build-up.
Having already defeated Real Madrid in La Liga, the Spanish Super Cup final, and the Copa del Rey final this season, Barcelona equaled their own record from the 1982-83 season, winning four Clasicos in a single campaign.
Real Madrid's defensive struggles were evident, having conceded 16 goals in four Clasicos this season, highlighting their decline compared to Barcelona's improvement over the past nine months.
Barcelona can clinch the league title with a victory over Espanyol on Thursday or if Real Madrid loses to Mallorca on Wednesday. This was the fourth encounter this season in which Real Madrid has been defeated by Barcelona.