A clinical Barcelona won 3-0 at Real Madrid in an intense second leg of their Copa del Rey semi-final on Wednesday as a Luis Suarez double helped them secure a 4-1 aggregate victory and a spot in the final for the sixth straight season.
A dominant yet wasteful Real ravaged their rivals in the first half while spurning a string of clear chances at the Santiago Bernabeu.
Yet Barca went ahead against the run of play in the 50th minute as Ousmane Dembele led a counter-attack and Suarez slotted his pass into the net.
Spearheaded by the pace and confidence of Brazilian teenager Vinicius Jr, Madrid continued to fly forward but failed to find the target.
Barca effectively killed off the tie when Raphael Varane bundled the ball into his own net as he tried to prevent Suarez reaching another cross from Dembele.
Suarez then earned a penalty and further humiliated Madrid by converting with an audacious 'Panenka', deceiving goalkeeper Keylor Navas by chipping the ball into the net.
Barca, who lost first leg games to Levante and Sevilla in the Cup and drew 1-1 with Madrid in the first leg of the semi-final, booked their place in the final at the Benito Villamarin stadium, the home of Real Betis, on May 25.
Bidding to win the trophy for a record fifth year in a row, the Catalans will face either Betis or Valencia, who drew 2-2 in the first leg of their semi-final and meet again on Thursday.
"This is another demonstration of how good this team is. People keep saying that we don't care about the Cup, but we have shown that we always want to win every single trophy," Suarez told reporters.
Real coach Santiago Solari stressed his side's dominance in the game but cursed their inability to take their numerous chances.
"In football you have to be efficient and take the chances you get," he said.
"We fell with honour, we could do no more. We were not clinical but they were, and we go home feeling hurt because we really wanted to reach the final."
Worst of all for Madrid, La Liga leaders Barca will be back at the Bernabeu once again on Saturday for a league fixture which, should they win again, would see them move 12 points clear of their arch rivals.
Barca coach Ernesto Valverde attempted to neutralise the threat of Vinicius by deploying right-sided defenders Sergi Roberto and Nelson Semedo to protect the left flank but the Brazilian was still the most dangerous player in the first half.
Vinicius could have won a penalty when Semedo clattered into him and had three clear chances to score before the interval, failing to hit the target twice from inside the area, and being thwarted by Marc-Andre Ter Stegen.
He continued to dance his way through Barca's defence after the break but his final touch let him down.
Shortly after Suarez's opener, he cut into the box and delivered a cross which Sergio Reguilon met with a diving header, but Ter Stegen flew across his goal to repel the effort.
Madrid, who were also beaten 3-0 by Barca at the Bernabeu in La Liga last season and were thrashed 5-1 by their rivals back in October, lost their heads after that chance and there was no coming back following Varane's own goal.
Barca seemed to relish their role as Real's tormentors and Suarez took the ball from usual penalty taker Lionel Messi to complete their fourth victory in five visits to the Bernabeu with an ice-cool finish from the spot.