MIAMI -- LeBron James had 29 points, eight rebounds and nine assists as the Miami Heat won an intense battle between the two top teams in the NBA, beating the Oklahoma City Thunder 103-97 Tuesday night.
James won his duel with Thunder superstar Kevin Durant, who had 33 points, seven rebounds and three assists.
The game set an attendance record at AmericanAirlines Arena with 20,300.
The Heat (19-6) won their fifth game in a row, improving to 14-2 at home. The Thunder (21-6) lost their second in a row after a franchise-best, 12-game win streak was snapped Thursday in a 99-93 loss to the Minnesota Timberwolves.
The Heat led 96-92 before Durant made one of two free throws with 1:07 left. Durant added a dunk with 44 seconds remaining to make it 96-95. With 18 seconds to go, a James pass found Chris Bosh alone under the basket for a dunk.
Durant then hit a mid-range jumper with 15 seconds left, slicing Miami's lead to 98-97. The Thunder fouled Ray Allen, but he made two free throws to put the Heat back up by three.
On Oklahoma City's final sequence, Durant missed a 3-pointer, which was contested by James. Thunder guard Russell Westbrook got the rebound and missed a 3-pointer with three seconds left.
Bosh grabbed the rebound and was fouled. The Heat added three free throws, including one on a technical foul called against Westbrook, who thought he was fouled on his final shot.
The Heat and Thunder, who entered the day with the best records in their conferences, met for the first time since Miami beat Oklahoma City in the 2012 NBA Finals.
Tuesday's game was electric from the start, and each team's superstar -- James and Durant -- picked up a first-quarter technical foul.
With 10:52 left in the game, Westbrook got free for a potential breakaway layup, but he was fouled from behind by the Heat's Shane Battier.
Westbrook landed hard and took exception. Both teams rushed to the spot under the basket were Westbrook was fouled, and Miami's Dwyane Wade and Oklahoma City's Serge Ibaka emerged with technical fouls after shoves were exchanged.
The game was very physical. Allen took a hard shot to his right shoulder late in the fourth quarter, but he stayed in the game.
Wade left the game in the third quarter due to leg cramps before returning. He finished with 21 points in 38 minutes.
Heat point guard Mario Chalmers added a season-high 20 points, and Bosh had 16.
Westbrook scored 21 points and pulled down a game-high 11 rebounds.
NOTES: Bosh, who missed the Heat's previous game on Saturday due to the flu, was back in the starting lineup Tuesday. ... Shooting guard Kevin Martin, who missed the Thunder's previous game Thursday at Minnesota due to a right thigh contusion, returned to action against the Heat. He came off the bench to score 15 points. ... Miami coach Erik Spoelstra said the Thunder is better in some ways than last season, even without the traded James Harden. "They are defending at a higher level," Spoelstra said. "The ball is in Westbrook and Durant's hands more. When you have the ball in their hands more, that becomes a challenge." ... James committed a foul in the first quarter, the first time he was whistled in 254 minutes. ... Thunder coach Scotty Brooks on James: "He has a chance to be the MVP for the next 10 years." ... Up next, the Thunder return home to face the Dallas Mavericks (12-6) on Thursday. ... The Heat will have to guard against a letdown when they play the Bobcats (7-20) in Charlotte on Wednesday. The Heat lost earlier this month on the road against the Washington Wizards, who are an NBA-worst 3-22.