The holders' 2-1 victory, which made it 3-1 on aggregate, was Bilbao's first reverse at their new San Mames arena, opened at the beginning of the season.
Atletico won last week's first leg in the Spanish capital 1-0 and Diego Costa came close to making it 2-0 on aggregate in the first minute at a sodden San Mames.
Koke sent the Brazil-born forward clear on goal but Bilbao goalkeeper Iago Herrerin saved well with his legs.
Roared on by the home faithful, Bilbao gradually seized the upper hand in an intense first half and were rewarded when Aritz Aduriz nodded into the corner from Mikel Balenziaga's cross in the 42nd minute.
Atletico goalkeeper Thibaut Courtois conjured three superb saves to deny Andoni Iraola, Aduriz and Mikel Rico in the leadup to halftime before Raul Garcia clipped Emiliano Insua's centre into the corner 10 minutes into the second half to make it 1-1 on the night and 2-1 on aggregate to the visitors.
Needing two goals to turn the tie around, Bilbao mounted waves of attacks but Atletico held firm and struck again four minutes from time when Koke again sent Costa clear and he rounded Herrerin and tapped into an empty net.
Atletico beat Real 2-1 at Real's own Bernabeu stadium in last year's final and appear to have their number this season as well after earning a 1-0 win there in La Liga in August.
Real went through to the two-legged semi-finals, which are next week and the following week, when they beat Espanyol 1-0 in Madrid on Tuesday for a 2-0 aggregate success.
On the other side of the draw, record winners Barcelona have a 4-1 advantage when they host Levante later on Wednesday.
Barca would play Real Sociedad or third-tier Racing Santander in the last four, although the Santander players have threatened to boycott the match in protest over unpaid wages.
Sociedad lead 3-1 from last week's first let at their Anoeta stadium in San Sebastian.
The final is on April 19 at a yet-to-be-determined venue.