RB Leipzig Player Ratings:
Peter Gulacsi: 6/10
The Leipzig number one made a great stop to keep out Bayern Munich's Benjamin Pavard but had no chance with any of the three other goals from the hosts.
Nordi Mukiele: 6.5/10
Nordi Mukiele tried to do all he could against the electric Kingsley Coman, but the Bayern man got the better of Mukiele on the night. However, Mukiele did well to handle the Bayern Munich pressure in the second half.
Ibrahima Konate: 7.5/10
Ibrahima Konate shackled Robert Lewandowski all night and was a rock at the back for Leipzig, putting up a solid performance.
Dayot Upamecano: 7/10
Dayot Upamecano did his job well but had a little more trouble dealing with Lewandowski than his centre-back partner. The Pole put the ball through Upamecano's legs in the build-up to Bayern Munich's first goal.
Angelino: 7/10
It was a pretty solid game at the back for Angelino, who he did his defensive duties with aplomb. Angelino was a nuisance going forward, and the Spaniard also provided the assist for Leipzig's third goal.
Amadou Haidara: 7/10
The Leipzig midfielder was a pitbull in the centre of the park. Amadou Haidara played with tenacity and wasn't afraid to throw himself into challenges. Although his intensity faded in the second half, Haidara played a key role in Leipzig winning the midfield battle.
Tyler Adams: 6.5/10
If the American was rated for the first half alone, he'd probably be a 7.5 or an eight on ten. It was an immense performance in the first half, but the American looked out of sorts in the second and was very sloppy in possession against a rather poor Bayern Munich midfield.
Marcel Sabitzer: 7.5/10
Marcel Sabitzer was the heartbeat of Leipzig on the night. He Had a hand in everything good that Leipzig did against Bayern Munich. It was a complete performance from the Austrian.
Justin Kluivert: 7/10
Justin Kluivert looked threatening in the first half and caused immense problems to David Alaba. Kluivert took his goal well to make it 2-2 on the night for Leipzig but was rather quiet in the second half.
Emil Forsberg: 8/10
Emil Forsberg ran Bayern Munich's defence ragged with his movement and trickery in a false 9 role. The Swede scored a goal and assisted another before he was replaced in the second half.
Christopher Nkunku: 7/10
Christopher Nkunku was full of running and kept Bayern Munich's defenders under pressure. The Frenchman scored Leipzig's opener, but his influence faded away in the second half.
Ratings of Leipzig Substitutes
Yussuf Poulsen: 5/10
Yussuf Poulsen was poor after coming on for the excellent Forsberg. The big Dane, however, provided little threat to the Bayern Munich backline.
Kevin Kampl: 6/10
Kevin Kampl brought energy to the tiring Leipzig midfield but couldn't make any significant impact in the game for Nagelsmann's men.
Dani Olmo: 5/10
Dani Olmo struggled to match the intensity of the game after coming on, as Bayern Munich easily thwarted his forward forays.
Willi Orban: 6/10
Willi Orban was brought on to shore up the Leipzig defence in the dying moments of the game. Orban did well in dealing with Bayern Munich's mounting pressure on the night.
Alexander Sorloth: 5.5/10
Alexander Sorloth showed decent hold-up play towards the later stages of the game after coming on for Haidara.