Running back Doug Martin ran over the Vikings for 214 total yards in a surprisingly easy win at Minnesota on Thursday night. (US Presswire)

Considering the circumstances and the caliber of opponent, Tampa Bay's 36-17 win at Minnesota on Thursday night may have been the Buccaneers' best all-around performance this season.

Offense: A-

Credit the offense for taking advantage of its opportunities. The Bucs settled for field goals on three drives, but Tampa Bay consistently got into the red zone. It established the run with RB Doug Martin, who ran over the Vikings for 214 total yards. QB Josh Freeman was efficient, even if not spectacular. The Bucs didn't beat themselves: no turnovers, no drive-killing penalties and only one sack allowed. Previous game's grade: B+

Defense: B+

Sure, the Vikings managed 17 points, 369 yards of offense and 6.3 yards per play to Tampa Bay's 5.3, but the defense made the plays necessary to win. The Bucs forced three turnovers, and Minnesota didn't score on consecutive possessions to claim momentum. By forcing three consecutive three-and-outs to start the game, the defense made sure the Vikings' crowd was frustrated early. Previous game's grade: C-

Special Teams: C

PK Connor Barth was back to his old self, making his three field-goal tries. P Michael Koenen didn't hurt the team with his six punts (46.8-yard average), although he didn't exactly flip the field for the Bucs, either. The team didn't get to return a single kickoff, and PR Roscoe Parrish muffed one punt and made a questionable decision to dive after another. Koenen's deep kickoffs gave the Vikings' Percy Harvin only one chance to return a kick. Previous game's grade: C-

Coaching: A

Tampa Bay at least limited the damage done by Harvin and RB Adrian Peterson. Its offense was efficient and put the game away in the second half with two long touchdown drives to keep Minnesota out of reach. It forced turnovers and didn't make major mental mistakes. The Bucs looked like a well-coached team -- and all of this came on the road on a short week. Previous game's grade: C

For more from Tampa Bay Bucs blogger Patrick Southern, follow @CBSBucs on Twitter.