The orchestrator of Bayern's attacking play was Ribery, the Frenchman coming in from his position on the left to break forward at every opportunity.
But it was Jose Ernesto Sosa on the opposite flank who created the first meaningful chance as he crossed from the right to an unmarked Toni, who failed to connect sufficiently with his header from a glorious position six yards out.
Aware that an early goal was surely necessary if they were to stand any chance, the hosts continued to probe for a breakthrough and Ribery turned Barca captain Carles Puyol inside out before shooting narrowly over the bar.
Bayern had overturned seven of their previous 17 first-leg deficits in Europe's top club competition but all of those were by one goal and a four-goal first-leg deficit has never been overturned in the Champions League.
And their hopes began to fade as Barca weathered the early storm and gradually began to assert their authority.
Despite Guardiola having to watch the game from that stands after being sent off in the first leg, the visitors needed no prompting to impose their slick pass-and-move game on proceedings.
Ribery was the only Bayern player to threaten the Barca defence
Lionel Messi was, predictably, at the heart of their intricate patterns and caused the home defence no shortage of problems with his nimble dribbling and incisive through-balls.
But, apart from a blistering Daniel Alves drive that sailed marginally high and wide, chances were few and far between for Barca and two minutes after half-time they were behind.
Ze Roberto sidestepped Yaya Toure to slide Ribery through on goal and he neatly took the ball past goalkeeper Valdes before coolly slotting it high into the net.
But Klinsmann's men failed to capitalise on their momentum and it was Barca who took the initiative to ensure their would be no late drama.
The impressive Andres Iniesta put Messi through on goal, only for the Argentine to be incorrectly flagged offside when one-on-one with Hans Jorg Butt, and then Samuel Eto'o was denied by Lucio's perfectly timed sliding tackle after Messi's run and cross.
An equaliser seemed inevitable and it arrived when Keita pounced at the end of a mind-boggling 17-pass move, primarily involving Eto'o, Iniesta and Xavi.
Spain midfielder Xavi curled a free-kick inches wide just before the end but by that point Barca's passage into the last four had long since been secured.
Bayern Munich coach Jurgen Klinsmann:
"We reacted well to the defeat in Barcelona. If we had scored early and if we had led 2-0, who knows what would have happened. Maybe they would have lost some confidence.
"We wanted an early goal, then anything could have been possible, but we have lacked the little bit of luck.
"The team gave a good account of themselves against one of the teams who are favourite to take the Champions League title."
Barcelona assistant coach Tito Vilanov:
"We are very happy to be back in the semi-finals. We still have a lot of time before we have to think about Chelsea but they are a great team. It would not have been an easier game if we had faced Liverpool.
"We played really well in defence and did a good job keeping Ribery and Toni in check.
"We have not reached our goals yet. We have to continue working."
Butt, Lell, Lucio, Demichelis, Lahm, Sosa (Altintop 78), Van Bommel, Ottl, Ze Roberto (Borowski 78), Ribery, Toni.
Subs Not Used: Rensing, Van Buyten, Badstuber, Breno.
This page is best viewed in an up-to-date web browser with style sheets (CSS) enabled. While you will be able to view the content of this page in your current browser, you will not be able to get the full visual experience. Please consider upgrading your browser software or enabling style sheets (CSS) if you are able to do so.