Bayern Munich defeated Borussia Dortmund 3-1 at the Allianz Arena in the Bundesliga on Saturday, 23rd April. The win saw them seal a remarkable 10th consecutive Bundesliga title, the first for manager Julian Nagelsmann.Bayern Munich came into the game on the back of a comfortable 3-0 win away to Arminia Bielefeld. A win here would've seen them lift the title against their closest competitors. Dortmund, on the other hand, came into the contest on the back of a 6-1 demolition of Wolfsburg.The hosts started strongly, dominating possession and taking the game to their opponents. Dortmund, too, were not shy and surprisingly pushed up the field despite missing a few key defensive players. However, their early pressure was in vain as Bayern Munich opened the scoring in the 15th minute. Serge Gnabry controlled the ball with a delicate touch to the thigh, before rifling it into the top-left corner to make it 1-0. Leon Goretzka provided the assist from a corner.Bayern Munich continued to gallop forward each time they started a move from the back or won the ball high up the pitch. Their pressure paid off as Gnabry made it 2-0 from a pass by Kingsley Coman. However, play was pulled back as the latter was offside in the build-up. The Bavarians, however, found the net just a few minutes later as Thomas Muller released Robert Lewandowski to score to make it 2-0.They continued to impose themselves on Dortmund and ended the first half with a flurry of attacking moves. The sides went into the break with Bayern Munich leading 2-0.FC Bayern München@FCBayernStarke erste Hälfte! Was sagt ihr zu den 45 Minuten? #FCBBVB | 2:01417123Starke erste Hälfte! 💪Was sagt ihr zu den 45 Minuten? 🔴⚪ #FCBBVB | 2:0 https://t.co/rnkgnzcRtrBorussia Dortmund looked more energetic after the restart with each player moving with a spring in their step. Marco Reus seemed to have woken up after a slow first half and arrived in key areas. On one occasion, he was fouled by Joshua Kimmich in the box and Dortmund were awarded a penalty. Emre Can stepped up to coolly convert into the bottom-right corner to make it 2-1.The Black & Yellow seemed to find their feet soon after getting on the scoresheet as they looked more composed on the ball. Their errors were significantly reduced in the second half, which allowed them to retain the ball for longer spells to carve out openings. However, aside from the penalty, they failed to threaten Manuel Neuer with a real effort as Erling Haaland saw his shot saved by the custodian.Bayern Munich made a few changes, bringing on Jamal Musiala, Marcel Sabitzer and Leroy Sane. The trio helped the hosts find a second wind as they combined well amongst themselves to put together some smooth passing moves.They succeeded in carrying the ball into Dortmund's box and on one such occasion, the ball fell to Musiala. The former Chelsea youth academy player applied the finishing touches to make it 3-1. The goal sealed the Bundesliga title for Bayern Munich as they held on to clinch all three points. With a thrilling contest to look back on, let's take a look at player ratings from both sides for Der Klassiker.Bayern Munich Player RatingsFC Bayern München v Borussia Dortmund - BundesligaManuel Neuer - 6.5/10The veteran German was sharp in goal. He made one important save and played 14 accurate long balls from 28 attempts.Benjamin Pavard - 6.5/10Pavard passed the ball around well and imposed his physicality on Dortmund's players. He won seven of his 10 duels and made four successful tackles.Dayot Upamecano - 6/10He did well to mark Haaland despite being a few yards off his pace. He won four of his six duels, making two clearances and one block.Lucas Hernandez - 7/10Easily Bayern Munich's best defender on the night. He was spectacular in defense, positioning himself in the right areas. He won three of the four duels he was involved in. Hernandez also made three interceptions, two blocks and one clearance in an impressive outing.ESPN+@ESPNPlusWhat a tackle by Lucas Hernandez 49944What a tackle by Lucas Hernandez 💪 https://t.co/LlKyawdNdvAlphonso Davies - 6/10The Canadian was lively going up and down the left wing and provided vital support in attack.Joshua KimmichKimmich was solid in central midfield for the hosts. However, soon after the restart, he made a clumsy challenge on Reus which resulted in a penalty for Dortmund.Leon Goretzka - 7.5/10Goretzka provided an assist for his side's opener. He also passed the ball with 85% accuracy, making five tackles and two interceptions.Serge Gnabry - 7.5/10He started the game in lively fashion and scored from a stunning volley in the 15th minute. He won three of his six duels and also played one key pass.SI Soccer@si_soccerThat is an absolutely top-class goal from Serge Gnabry, and it could be a title-winning one, too. 1-0 to Bayern Munich in #DerKlassiker(via @ESPNFC)327That is an absolutely top-class goal from Serge Gnabry, and it could be a title-winning one, too. 1-0 to Bayern Munich in #DerKlassiker(via @ESPNFC)https://t.co/Cp7R4yCstwThomas Muller - 7/10Muller was the heartbeat of this Bayern side in attack. He provided an assist for his side's second goal.Kingsley Coman - 6.5/10Coman used his pace and ability to run in behind the defense to torment Wolf on Dortmund's right flank.Robert Lewandowski - 7/10Lewandowski scored yet another goal in the game, latching onto a well-guided pass by Thomas Muller to slot into the net. He took two shots on target but also missed the target twice, out of which one was a big chance.SubstitutesJamal Musiala - 7/10The youngster came on a while after the hour-mark and scored the goal to seal the win and the title for Bayern Munich.Leroy Sane - 6.5/10His introduction gave Bayern Munich an extra edge in attack, which they lacked due to tired legs.Marcel Sabitzer - 6/10Sabitzer went on to help his side secure the win.Niklas Sule - N/AHe played very few minutes to warrant a rating.Borussia Dortmund Player RatingsFC Bayern Munich v Borussia Dortmund - BundesligaMarwin Hitz - 6/10Hitz had a lot of work to do in Dortmund's goal and was unlucky to concede after two brilliant pieces of finishing. He made an incredible reflex save midway through the second half to keep his side in contention. He made a total of four saves on the night.Marius Wolf - 6/10Wolf struggled with Coman's blistering pace and lost his marker on multiple occasions.Manuel Akanji - 6/10Akanji struggled to mark Bayern Munich's free-flowing attack. However, he won seven of his nine duels, making three clearances and two interceptions.Dan-Axel Zagadou - 5/10The Frenchman had a torrid outing right from the start. He made one error that led to Bayern Munich's second goal.Raphael Guerreiro - 6/10The Portuguese did well to cover areas up and down the left flank, providing options for Dortmund in attack.Emre Can - 7/10Can made a couple of unnecessary rash challenges that heated things up between the two sides a bit. He was booked in the first half. However, the German brought his side back into the game soon after the restart with a composed spot-kick.Bundesliga English@Bundesliga_ENCool, Can and Collected. @EmreCan_ from the penalty spot puts @BlackYellow back in it. 🟡2-1 #DerKlassiker14224Cool, Can and Collected. 😎⚽@EmreCan_ from the penalty spot puts @BlackYellow back in it. ⚫🟡2-1 #DerKlassiker https://t.co/4BQfpFlDGnJude Bellingham - 6.5/10The young Englishman looked composed in the heart of Dortmund's midfield. He played three accurate long balls and won six of his 12 ground duels.Julian Brandt - 6/10Brandt did well to carry the ball into key areas but had little to no support from his teammates.Marco Reus - 6.5/10Reus looked a shade of himself throughout the first half as the game was mainly played in his side's defensive third.Reinier Jesus - 5.5/10The young Brazilian looked out of sorts in a wide-left role and was often seen in no-man's land.Erling Haaland - 6/10The Norwegian worked hard to get into dangerous positions and used his strength to hold his own. However, the service given to him was awful at times and he could not take effective shots at goal.SubstitutesJamie Bynoe-Gittens - 5.5/10The youngster came on after 70 minutes and put in a decent performance.Youssoufa Moukoko & Felix Passlack - N/AThey came on as late-game substitutes and did not do enough to warrant a rating.