MILWAUKEE (AP) -- The Miami Heat have the stars, the sun and South Beach.
Somehow, the Milwaukee Bucks have bragging rights.
Brandon Jennings scored 31 points, including three 3-pointers in a critical stretch of the fourth quarter, and Milwaukee beat Miami 105-97 on Wednesday night for the Bucks' second win over the Heat this season.
Even on a huge night for LeBron James - he scored a season-high 40 points, including a powerful windmill dunk destined for the highlight reels - Jennings and the Bucks walked away with a win.
And, apparently, a little bit of admiration from James.
" Me and LeBron looked at each other,'' Jennings said. " I said, `40?' He said, `You've got 31, though." '
Jennings also had eight assists with no turnovers while Drew Gooden added 17 points and nine rebounds for the Bucks, who have won three straight - including a victory over the Los Angeles Lakers last Saturday.
The Bucks also beat the Heat 91-82 in Miami on Jan. 22.
James had 24 points in the first quarter, the most points any player has scored in a quarter this season, according to STATS LLC. But he went cold in the second half.
" You always give credit where credit is due,'' James said. " They made some shots in the third quarter and fourth quarter. They got back into it. They made a run. We held it as much as possible."
Dwyane Wade added 23 points for the Heat, but it wasn't enough.
" What that second half showed is we still have a long way to go as a ballclub just in terms of playing consistently,'' Heat coach Erik Spoelstra said. " We were playing very good basketball in the first half. It's a fragile game. In this league it can go the other way quickly if you're not staying consistent to your identity."
Bucks fans chanted " overrated" in the final minutes of the game.
" We can't just have an ordinary energy game, we have to have an extraordinary game against them,'' Bucks coach Scott Skiles said. " The guys came out in the second half and really took it to them."
Milwaukee trailed 60-47 at the half but closed the gap in the third quarter. The Heat went into the fourth with a 79-76 lead.
Ersan Ilyasova converted a three-point play to tie the score at the start of the fourth, and Jennings hit a running layup to give the Bucks an 81-79 lead with 11:06 left.
Milwaukee's fourth-quarter run continued, and the Bucks led 87-82 when Luc Richard Mbah a Moute scored inside. The Heat than drew a shot-clock violation with the ball in James' hands, and Jennings hit a 3-pointer on the other end to give Milwaukee a 90-82 lead with 6:40 to go.
After a pair of free throws by Gooden, Wade missed a contested layup, and Jennings hit another 3-pointer.
James missed a long jumper - and Jennings drilled yet another 3, giving the Bucks a 98-82 lead.
With Milwaukee later leading 101-92, James was called for traveling in transition with just over two minutes left.
James shot 5 for 12 in the second half.
" He's not easy to stop,'' Jennings said. " He got it going early, but I think we did a great job (in the) second half, just countering him on everything."
A large part of the credit goes to Mbah a Moute, the Bucks' defensive ace.
" It's a tough job, going against those guys,'' Mbah a Moute said. " But it's a fun job, too. Those guys are the best and it's always fun to play against the best."
Wednesday's game had all the makings of a Heat blowout early on, thanks to James. Already off to a sizzling start, James finished the first quarter in memorable fashion.
" The first half, it felt like LeBron was going to go for like 60 or whatever," Jennings said.
With under a minute left in the quarter, he took the ball away from Milwaukee's Beno Udrih, took a couple of steps and finished with a powerful windmill dunk with 32.9 seconds left in the quarter.
As if that wasn't enough, James then hit a 3 with 2.2 seconds left in the quarter.
James' huge dunk drew a gasp, then a roar from the crowd. It even had a pair of Bradley Center ushers recreating the dunk during the first-quarter break.
But the Heat couldn't keep the lead.
" I don't think we relaxed,'' Wade said. " They played well. Give them credit. I'm not taking anything away from the Bucks."
Notes: According to STATS, James' 24 points matches his career high in a quarter, accomplished three previous times. ... Stephen Jackson returned for the Bucks, after serving a one-game NBA suspension in Milwaukee's victory over the Los Angeles Lakers on Saturday, then being benched against Detroit on Monday. Jackson played nine-plus minutes and didn't score. ... The Bucks recalled rookie guard Darington Hobson from the Fort Wayne Mad Ants of the NBA Development League.