A second-half Bastian Schweinsteiger goal gave Bayern a brief lead before Arsenal’s Lukas Podolski equalised with a thunderbolt of a shot as the tie finished 3-1 on aggregate.
Arsenal, who also went out at the same stage of the competition to the same opponents last season, failed to overturn their 2-0 deficit from the first leg three weeks ago.
Amidst hopes of repeating last season’s shock 2-0 win in Munich, Arsenal boss Arsene Wenger made six changes from the team which lost to Bayern in London.
Lukasz Fabianski was named in goal for the suspended Wojciech Szczesny, who was sent off in the first-leg.
There were only six of the seven permitted replacements named amidst reports Japan’s Ryo Miyaichi flew to Germany despite being ineligible for the Champions League’s knock-out stages.
Bayern coach Pep Guardiola made three changes from the first leg, switching from a 4-1-4-1 in London to the 4-2-3-1 formation used in last season’s European final.
Bayern got off a bad start when centre-back Dante was booked for a clumsy challenge on Arsenal’s Alex Oxlade-Chamberlain after only eight minutes.
It was his third of Bayern’s European campaign and means he is suspended for the quarter-final first-leg.
Bayern earned the first real chance when winger Franck Ribery found space on the left and sent in a cross which Arjen Robben fired over with 19 minutes gone.
Spain’s Javi Martinez had a goal disallowed for offside after 27 minutes, while at the other end Bayern’s Manuel Neuer saved Olivier Giroud’s header.
Mario Mandzukic, who headed over, Robben, whose shot was blocked, and Mario Goetze, who forced Fabianski into a fine save, had chances as Bayern enjoyed their customary 70 percent possession, although it stayed goalless at the break.
– Off-form Ozil replaced –
Wenger made a key change for the second-half as Mesut Ozil, who had hamstring trouble, made way for Tomas Rosicky in the attacking midfield role.
It marked a miserable two legs for the off-form Ozil, who apologised to Gunners fans via Facebook after failing to convert a key penalty in the first-leg.
Soon after the break referee Svein Oddvar Moen ignored Bayern’s penalty appeals when Robben went down in the area just before the opening goal.
Ribery found space on the left and crossed inside to Schweinsteiger, playing his first Champions League game since November, to drill home on 55 minutes.
The lead lasted just two minutes as Arsenal’s Germany winger Lukas Podolski robbed Bayern captain Philipp Lahm and fired home from a tight angle giving Manuel Neuer no chance.
There was drama in added time as Bayern replacement Thomas Mueller had a penalty attempt saved by Fabianski after Robben was fouled by centre-back Laurent Koscielny.
The result was welcome news in a dark week for the Bavarian giants.
The Allianz Arena clash was played against the backdrop of the court case against Bayern president Uli Hoeness, which started Monday.
The 1974 World Cup winner is fighting to avoid a jail term and stands accused of having dodged 27.2 million euros ($37.6 million) in taxes by hiding his wealth in Swiss bank accounts.
A verdict is expected on Thursday and major tax fraud carries a maximum sentence of 10 years in Germany.