Luis Suarez scored and was sent off as holders Barcelona reached a fourth successive King's Cup final after drawing 1-1 with a resilient Atletico Madrid in an action-packed semi-final second leg on Tuesday.
Suarez was one of three players dismissed and will now miss the final after Barcelona edged through 3-2 on aggregate.
The Uruguayan tapped in from close range in the 43rd minute after an inspired run and shot from Lionel Messi to deliver a sucker punch to Atletico, who had dominated the first half at the Nou Camp but failed to take their chances.
Kevin Gameiro blazed a penalty over the bar with 10 minutes remaining but the French striker still made for a tense finale by tapping in an Antoine Griezmann cross moments later.
Barca defender Sergi Roberto will also be suspended for the final after being sent off for a second booking in the second half and Atletico winger Yannick Carrasco was dismissed as well for a second yellow card.
Mario looks to avoid 2nd final loss with Portugal in a year
Suarez was then sent off in the 90th minute for an elbow on Atletico midfielder Koke.
Atletico had five minutes of stoppage time to snatch a winner and force extra time, but Barca withstood the pressure.
Barca, the 28-times winners, will meet either Alaves or Celta Vigo in the final in May, seeking a third successive Cup triumph under coach Luis Enrique.
"We had to suffer, so did our supporters, perhaps we didn't deserve to go through on this display but given what we've done in the Cup I think we're worthy finalists," the Barca coach said.
Atletico had not won at the Nou Camp in any competition since 2006 and had to take the initiative if they were to stand any chance of going through. They started the second leg as they had ended the first, putting Barca under intense pressure.
After a few forays into the hosts' area came to nothing, Carrasco cut inside and crashed a shot down Jasper Cillessen's throat which the Dutchman punched clear, while the goalkeeper later held a stinging header from Diego Godin.
Barca struggled to maintain possession and a Suarez shot into the side netting had been their only dangerous moment until Messi skipped clear on the break.
Suarez denied place in Cup final after pivotal role
He held off four players and fired at Miguel Angel Moya, with Suarez pouncing on the rebound after the goalkeeper could only parry the shot.
Atletico looked beaten at the start of the second half but showed grit and determination to get back into the game, even after Griezmann had a goal wrongly ruled out for offside and Carrasco was sent off.
"Barca were only better than us in goals scored, although that's what counts the most in football," Atletico coach Diego Simeone told reporters.
"I leave here with a sensation of pride. We played the tie with passion which is what you should always do."