Barcelona edged their way into the Copa del Rey semi-finals with a 2-2 draw over Real Madrid.
The cup holders, who were reduced to 10 men late on, lost 4-3 on aggregate in a pulsating affair.
Despite Real Madrid looking the better side for the majority of the first-half, the home side grabbed the lead in the 43rd minute when Pedro coolly slotted home after an excellent Lionel Messi run.
The Catalans were in wonderland just before the half-time whistle when Dani Alves unleashed a stunning drive into the top corner of the net
Cristiano Ronaldo pulled a goal back in the 68th minute from time and four minutes later the visitors were level when Karim Benzema slammed home.
Yet it was not to be for the away side as they had Sergio Ramos sent off late on for a second yellow card as Barcelona held on for a place in the semi-finals where they will face either Valencia or Levante.
Barcelona took the lead close to half-time after some Lionel Messi magic.
The diminutive Argentine weaved his way past several Madrid players before playing a clever pass to the unmarked Pedro, an early substitute for the injured Andres Iniesta, who beat a helpless Iker Casillas from 12 yards out.
Despite coming under pressure for the majority of the half, Barcelona grabbed a stunning second three minutes into injury-time.
Xavi’s free-kick deflected off the chest of Lassana Diarra and into the path of Dani Alves on the edge of the box who smashed an unstoppable shot into the top corner of the net to give his team a 4-1 aggregate lead at the break.
There was to be a ray of light for the away side as they scored in the 68th minute to pull the scoreline back to 4-2 on aggregate.
Mesut Ozil’s precise through ball found Ronaldo who rounded Pinto before calmly sliding it into the empty net.
Four minutes later Madrid were level on the night when Gerard Pique’s clearance was headed into the path of Karim Benzema by Xabi Alonso.
The French striker, who came on as a substitute, then flicked the ball past Carles Puyol before slamming it home to set up a pulsating end to a superb encounter.
Ramos was sent off in the 88th minute for a second yellow card for raising an arm to Sergio Busquets.
Both sides return to Liga action at the weekend with Real Madrid entertaining Real Zaragoza on Saturday while Pep Guardiola’s side travel to Villarreal.
Meanwhile, a dreadful mistake by Mallorca goalkeeper Juan Calatayud guaranteed Athletic Bilbao’s semi-final place.
The only goal of the quarter-final second leg tie came in the 76th minute at the Iberostar Stadium, allowing the visitors to progress 3-0 on aggregate.
Mallorca centre-back Ivan Ramis was unfortunate to score an own goal when he played a simple pass to Calatayud who allowed the ball to roll over his foot and into the net.
The match, and indeed the tie, ended disastrously for the home side as Chico was sent off in the 90th minute after a hard tackle on Markel Susaeta.
With the victory, Bilbao will now face Mirandes, conquerors of Espanyol, in the final four.