Match ends, FC Bayern München 4, Juventus 2.
Bayern Munich fought back from two goals down to beat Juventus in extra time, dramatically progressing to the Champions League quarter-finals.
With the tie poised at 2-2 after the first leg, Paul Pogba and Juan Cuadrado scored to put Juve in command.
Robert Lewandowski's header gave Bayern hope but Juve looked to have seen them off until Thomas Muller's 90th-minute goal forced the match into extra time.
And a buoyed Bayern finished in style through Thiago and Kingsley Coman.
The hosts - who had dominated possession to little effect in normal time - played with more urgency after Muller's lifeline, with the introduction of substitutes Coman and Thiago playing a key part in the turnaround.
Juventus will not only have to come to terms with falling so close to the finishing line, but the pill will be even more bitter knowing that the player who inflicted the killer blow was Coman, a talented teenager on long-term loan at Bayern from the Bianconeri.
The 19-year-old Frenchman made three assists in Bayern's 5-0 thumping of Werder Bremen in the league at the weekend and was once again influential when he replaced the ineffective Xabi Alonso after an hour.
Classy Barca too good for Arsenal
Juve perfection - but not for the full 90
Juventus have won all but one of their past 19 Serie A games and not conceded in the league for nearly two months, but despite such impressive form Massimiliano Allegri maintained his team would have to enjoy the "perfect game" to beat opponents who had won their past nine European home games by an aggregate score of 36-4.
For the majority of the match they met Allegri's demands. They pressed Bayern high up the pitch, forcing the home defence into rushed, uncharacteristic errors.
Even in the face of wave after wave of red-shirted attacks in the final 15 minutes, the Bianconeri's defence seemed to have enough knowhow to carry the team home, restricting the hosts to hopeful shots.
But Muller struck after a fine Coman cross to give an enthralling match an added twist. Coman played a part in Bayern's opener, too - his dash to the byline prevented the ball from going out and he then fed Douglas Costa, whose drifted cross towards the far post found the clinical Lewandowski.
Bayern rattled, Juve in control
Last year's runners-up showed remarkable resistance in coming back from 2-0 down to draw 2-2 in the first leg - Bayern boss Pep Guardiola said his respect for the Italians was even greater as a result - and they had clearly learned from the mistakes of Turin.
On a number of occasions Juve were able to bisect Bayern's defence with one pass. Manuel Neuer, in particular, looked harassed by Juve's high-tempo style. He gambled and lost early on, rushing off his line and allowing Stephan Lichtsteiner's shot to ricochet off him into the path of Pogba, who side-footed home into an unmanned net.
The offside flag then came to the German goalkeeper's rescue. Alvaro Morata put the ball in the net after a poor clearance from Neuer, and replays would later show that disallowing the goal was the wrong decision.
But the visitors did double their advantage and did so with panache. The impressive Morata sashayed through the middle, beating a host of defenders and unselfishly fed Cuadrado, who jinked inside the box before arrowing the ball in at the near post.
The Italians were dominant and on course to knock Bayern out in Guardiola's final season in charge, but then the Catalan made substitutions which changed the course of the match.
A dream ending for Guardiola?
Guardiola has won two successive Bundesliga titles and Bayern are five points clear in the league this season, but defeat in the last 16 on his last hurrah would have been regarded as a failure.
Winning the Champions League with Bayern for the first time would complete his legacy with the Germans before his departure to Manchester City in the summer.
But his men were below par for the majority of this match and will have to improve if the Spaniard is to secure the send-off he craves.
The quarter-final draw will be made on Friday and Guardiola has the likes of Barcelona, Real Madrid, Paris St-Germain and future employers City as potential last-eight opponents.
'Win welds us together'
Bayern boss Pep Guardiola: "To score four times against an Italian team when you trail 2-0 is a big deal. It was a great game for everyone. We played last season's finalists and we knew they are a great team."
Bayern captain Philipp Lahm: "This win brings us closer together, it welds us together. It was important to see that everyone, everyone on the bench was pushing us. We need the whole squad, every player of the team, if we are to be successful."
Juve coach Massimiliano Allegri: "We played a great game against a team that has extraordinary players. We played with a lot of personality and should have made it 3-0 when we had the chance.
"We should have been more careful with those last crosses but I am proud of my players."
Line-ups
Bayern Munich
Formation 4-1-4-1
- 1Neuer
- 21Lahm
- 32KimmichBooked at 43mins
- 5BenatiaSubstituted forBernatat 45'minutesBooked at 112mins
- 27Alaba
- 14AlonsoSubstituted forComanat 60'minutes
- 11Douglas Costa
- 25Müller
- 23VidalBooked at 48mins
- 7RibérySubstituted forThiago Alcántaraat 101'minutesBooked at 109mins
- 9LewandowskiBooked at 51mins
Substitutes
- 6Thiago Alcántara
- 13Ferreira de Souza
- 18Bernat
- 19Götze
- 20Rode
- 26Ulreich
- 29Coman
Juventus
Formation 4-5-1
- 1Buffon
- 26LichtsteinerBooked at 48mins
- 15Barzagli
- 19BonucciBooked at 53mins
- 33Evra
- 16Ju CuadradoBooked at 71minsSubstituted forPereyraat 89'minutesBooked at 103mins
- 6KhediraBooked at 29minsSubstituted forSturaroat 68'minutesBooked at 112mins
- 11de Carvalho Andrade Lima
- 10Pogba
- 12Lobo Silva
- 9MorataBooked at 38minsSubstituted forMandzukicat 72'minutes
Substitutes
- 7Zaza
- 17Mandzukic
- 22Asamoah
- 24Rugani
- 25Murara Neto
- 27Sturaro
- 37Pereyra
- Referee:
- Jonas Eriksson
- Attendance:
- 70,000
Match Stats
- Possession
- Home75%
- Away25%
- Shots
- Home26
- Away16
- Shots on Target
- Home7
- Away11
- Corners
- Home5
- Away2
- Fouls
- Home19
- Away26
Live Text
Post update
Post update
Second Half Extra Time ends, FC Bayern München 4, Juventus 2.
Post update
Foul by Douglas Costa (FC Bayern München).
Post update
Roberto Pereyra (Juventus) wins a free kick in the defensive half.
Post update
Attempt saved. Leonardo Bonucci (Juventus) header from very close range is saved in the bottom left corner. Assisted by Mario Mandzukic with a headed pass.
Post update
Foul by Arturo Vidal (FC Bayern München).
Post update
Paul Pogba (Juventus) wins a free kick on the left wing.
Post update
Attempt saved. Leonardo Bonucci (Juventus) right footed shot from the left side of the box is saved in the centre of the goal.
Post update
Foul by Thiago Alcántara (FC Bayern München).
Post update
Alex Sandro (Juventus) wins a free kick in the defensive half.
Post update
Attempt missed. Stefano Sturaro (Juventus) right footed shot from the centre of the box is too high.
Post update
Attempt saved. Mario Mandzukic (Juventus) right footed shot from very close range is saved in the centre of the goal. Assisted by Paul Pogba with a cross.
Post update
Foul by Douglas Costa (FC Bayern München).
Post update
Stefano Sturaro (Juventus) wins a free kick in the defensive half.
Post update
Joshua Kimmich (FC Bayern München) wins a free kick in the defensive half.
Post update
Foul by Roberto Pereyra (Juventus).
Booking
Stefano Sturaro (Juventus) is shown the yellow card.
Booking
Juan Bernat (FC Bayern München) is shown the yellow card.
Post update
David Alaba (FC Bayern München) wins a free kick in the defensive half.
Post update
Foul by Stefano Sturaro (Juventus).