Barcelona's Neymar scored twice and Luis Suarez was also on target as they beat Villarreal 3-1 on Wednesday and 6-2 on aggregate to reach their fourth King's Cup final in five years where they will face Athletic Bilbao.
Bilbao won 2-0 at Espanyol on Wednesday and 3-1 on aggregate, Aritz Aduriz and Xabier Etxeita scoring in the first half for Athletic to set up a repeat of the 2012 cup final which Barca won.
It will Be Barca's first final with Luis Enrique at the helm but the coach is not getting carried away.
"It is very good but we now need to concentrate on other things. We are happy obviously," Luis Enrique told reporters.
"We didn't want an end-to-end game but one where we had control. We wanted to be able to control it without any difficult moments.
"They (Villarreal) had two or three chances in the first half and then we had more control after that. We wanted to win the game but by always being under control."
Villarreal were dreaming of overturning the first-leg defeat at the Nou Camp to reach their first final but their hopes were hit when Neymar scored after three minutes.
Lionel Messi swung in an inviting cross from the right wing, allowing Neymar to nudge the ball past keeper Sergio Asenjo.
Villarreal rallied despite the size of the task ahead and Jonathan dos Santos converted a Jaume Costa cross after 39 minutes to level the scores on the night.
Barca were struggling to cope with Villarreal's attacking movement, but any realistic chance of a comeback was extinguished when Tomas Pina was sent off after 64 minutes for a reckless challenge on Neymar from behind.
Suarez latched on to a long ball from Javier Mascherano and rounded the keeper to put Barca ahead and Neymar nodded home a Xavi cross to seal a victory that was tainted by an ankle injury for midfielder Sergio Busquets.
"We were up against a strong side with players that have a lot of quality," Neymar told reporters.
"We knew that it was going to be difficult and I am happy now that we are in a final again."Reuse content