The Bavarians went into the game having won the first leg 3-1 last month, but goals in the third and 86th minute brought Arsenal to the brink of what would have been a shock qualification against one of the most in-form teams in Europe.
"Arsenal have quality, they came to us wounded from the first leg. They were very motivated, driven and they got that early goal," said Heynckes.
Olivier Giroud's third-minute tap-in was exactly what Arsenal needed as they set out in search of three goals, a major challenge in Munich.
"That was exactly what we needed to avoid. To go into the lead in the third minute makes it so much easier for one team and more difficult for the other," Heynckes said.
An 86th-minute goal from Laurent Koscielny was not enough to send Arsenal through, but restored some pride for the Gunners after their first leg defeat in London.
"I had warned of Arsenal yesterday, all this euphoria surrounding the game does not mean anything because these games need to be played first," added Heynckes, who is aiming to help Bayern reach their third Champions League final in four seasons.
Bayern are 20 points clear at the top of the Bundesliga and are favourites to lift the German Cup after reaching the last four, but they showed little of their class last night.
"We did not play as we are used to in the past weeks. But even such games, we need to play them and learn from them," said Heynckes.
"Arsenal were better than us, they dominated without having too many scoring chances and we did not succeed to control the game the entire 90 minutes."
Heynckes said the absence of midfielder Bastian Schweinsteiger and injured Franck Ribery was not a decisive factor, given the depth of his squad.