Bayern Munich came into the game looking to make it four league wins on the bounce after their shock exit in the DFB Pokal to second-tier Holstein Kiel. Meanwhile, Hoffenheim had also struggled for form earlier in the month but won their last two games after winning none of their previous three.
Bayern Munich set the tempo of the game early on. They probed the Hoffenheim defence before opening the scoring in the 32nd minute and adding another ten minutes.
Hoffenheim halved the deficit with a goal from Andrej Kramaric going into half-time. But Bayern Munich soon rounded up the game with two more goals in the second half to take all three points.
The result sees Bayern Munich strengthen their position at the top of the table. However, Hoffenheim find themselves in the bottom half of the table, sitting in 12th-place with just 15 games to go.
On that note, let us have a look at the Bayern Munich player ratings.
Manuel Neuer - 7/10
The Bayern Munich shot-stopper made a vital save in the first half to deny Ilhas Behbou, but there was nothing he could do about Kramaric's first-time strike.
Manuel Neuer had three fairly routine saves in the second half though, making four saves.
Benjamin Pavard - 7/10
Benjamin Pavard had a very comfortable first-half down the right flank, as Bayern Munich completely dominated possession. But he had more work to do in the second half, displaying his astute reading of the game with four interceptions.
Jerome Boateng - 7.5/10
Jerome Boateng scored the first goal of the game with a towering header following a corner. However, he could have done better tracking Kramaric's run into the box for Hoffenheim's goal. Otherwise, the Bayern Munich centre-back was completely faultless, winning 100% of his duels before being subbed off in the 87th minute.
David Alaba - 6.5/10
The Bayern Munich defender didn't have the best of games in terms of passing out from the back, as he regularly gave away possession cheaply while trying to send out long balls. However, David Alaba bravely put his body on the line to block goal-bound shots from the visitors.
Alphonso Davies - 7/10
The 20-year-old Alphonso Davies was his customary electric self, tearing down the Hoffenheim left flank. The Bayern Munich star was also diligent in his defensive duties, completing two tackles and three interceptions.
Marc Roca - 6.5/10
Marc Roca was handed his first league start for Bayern Munich. The summer signing from Espanyol put in a pretty decent shift, as he continually kept play ticking before he was replaced by Jamal Musiala in the 69th minute.
Joshua Kimmich - 7.5/10
Joshua Kimmich created the first goal of the game with a brilliantly whipped corner to claim his fourth assist in two games. The Bayern Munich midfielder was his usual dominant stride in the middle of the park, completing every long ball he attempted.
Thomas Muller - 7.5/10
Thomas Muller scored the second goal of the game with an absolute piledriver off his weaker foot into the bottom-right corner. The German playmaker was substituted off after 74 minutes though.
Serge Gnabry - 7.5/10
The 25-year-old winger ended his 11-game goal drought to claim his fifth league goal of the campaign with a well-taken strike off his left foot. Serge Gnabry was replaced by countryman Leroy Sane in the 70th minute.
Kingsley Coman - 7.5/10
The Bayern Munich winger created the final goal of the game, teeing up Gnabry for a simple goal. Kingsley Coman completed all his attempted takeons before being removed in the dying minutes of the game.
Robert Lewandowski - 8.5/10
Robert Lewandowski continued his rich vein of form by scoring his 24th goal in 18 league games this season. He was quick to pounce on an error by Hoffenheim's Oliver Baumann to score in his ninth straight league game. Lewandowski also set up Muller's goal after some fancy footwork in the box.
Ratings of Bayern Munich Substitutes
Jamal Musiala - 6.5/10
The 17-year-old midfielder Jamal Musiala came on for Marc Roca in the 69th minute and put in a decent shift, completing all his passes, crosses and interceptions.
Leroy Sane - 6/10
The former Manchester City winger Leroy Sane came on for the final 20 minutes of the game and had one shot on target while creating one chance.
Eric Maxim Choupo-Moting - 5/10
Eric Maxim Choupo-Moting came on late and had no impact in the game. He completed one pass in his 16 minutes on the pitch though.
Douglas Costa - 6/10
Douglas Costa came on late and had a lively performance on the left.
Niklas Sule - 5/10
Niklas Sule was the final sub of the game. However, the Bayern defender came on too late to have any telling impact on the game.