Real Madrid moved seven points clear at the top of La Liga after winning the El Clasico at Camp Nou on Saturday.
Some poor defending in the box by Barcelona allowed Sami Khedira to open the scoring just after a quarter of an hour. Substitute Alexis Sanchez levelled it for Barca through a scrappy effort in the 70th minute, seconds after coming on. However, Cristiano Ronaldo put Los Blancos back in front with a stunning goal two minutes later and Madrid held on for a priceless victory.
Real began the game well and nearly went ahead when Ronaldo connected with a Mesut Ozil corner and forced a good save out of Victor Valdes. The visitors continued to threaten from set pieces and were finally rewarded in the 17th minute when Pepe headed a corner towards the goal which Valdes pushed out. The ball fell in the area, Carlos Puyol failed in clearing the danger and Khedira stabbed it home from close range.
Barca slowly got into the game and their neat interplay should have got them a goal when Lionel Messi released Xavi Hernandez for a one-on-one chance but the Spaniard pulled his shot wide.
As the half progressed conditions became tougher due to the downpour. The Catalans maintained their dominance in possession but failed to register a shot on target before the break as Real went in leading by a goal.
Barca had a chance to equalise early on in the second half but this time youngster Cristian Tello sent his shot high and wide after being put through by Thiago Alcantara.
Pep Guardiola's side kept the high-tempo pressing and found their equaliser in the 70th minute when substitute Alexis Sanchez bundled home after a scramble in the six-yard box. However, the hosts weren't level for long as a few moments later Ozil found Ronaldo and the Portuguese hitman came bursting down the right to jink it over Valdes from a narrow angle for a classy goal - his 42nd of the season and Real's 109th - a new La Liga record.
Barca kept pushing to find a leveller for the second time but some strong defending by the Los Blancos denied Catalan talisman Messi any possession near the area and Madrid managed to hold on for all three points.
This is the first time Real have beaten Barcelona, in the league, since Pep Guardiola took charge of the Catalans and it has, in all probability, dealt a fatal blow to Barca's hopes of a fourth successive Primera Division title as Mourinho's men have cemented their position at La Liga's summit with four games remaining.
Meanwhile, both sides have a one goal deficit to overcome in their Champions League semi-final second-leg matches in midweek. Barca host Chelsea on Tuesday, while Real host Bayern Munich the following day.
Check out some of the best moments of the match here: