Oklahoma City Thunder's Serge Ibaka (9) and Miami Heat's LeBron James (6) battle for the ball during the second half of an NBA basketball game in Miami, Tuesday, Dec. 25, 2012. The Heat won 103-97. (AP Photo/J Pat Carter)

James had 29 points, passing Bernard King for 39th on the NBA career scoring list, adding nine assists and eight rebounds; Wade scored 21, and the Heat survived a frantic finish to beat the Oklahoma City Thunder 103-97 on Tuesday.

"Felt a little bit like a different month," Heat head coach Erik Spoelstra said. "Regardless of what your script is coming into the game, when you play this team, it's not going to go according to script. They're too good."

But on this night, much like in June, the Heat were better.

Mario Chalmers scored a season-high 20 for the Heat, who were 19-for-19 from the foul line, the second-best effort in franchise history behind only a 30-for-30 game in Boston on March 24, 1993. Chris Bosh added 16 for Miami, which has beaten the Thunder five straight times going back to last June's title series.

Durant scored 33 points and Westbrook added 21 for Oklahoma City, but both players missed potential game-tying three-point attempts in the final seconds.

"It was a great game. I can't complain," Thunder head coach Scott Brooks said. "We could have done a better job of not turning the ball over in the first half. All in all, it was a great game to play and a great game to coach. Unfortunately, we didn't come out with the win."

It's the first losing streak of the season for the Thunder, who had been 4-0 after losses. Ibaka and Kevin Martin each scored 15 for Oklahoma City.

The game had a little of everything - a fast start by the reigning champions, a one-handed dunk by James on an offensive rebound that will be added to his copious highlight reel, a scrum after a hard foul that led to double-technicals on Wade and Ibaka early in the fourth, an easy rally by the Thunder from an early double-digit deficit, and even workout partners in Durant and James barking back and forth in the final minutes.

James was even called for a personal foul for the first time since Dec. 8. When he was called for a foul against Ibaka with 7:57 left in the first quarter, it marked the first time in 254 minutes, 7 seconds of on-court time he had been called for any personals.

Such was the intensity that James slumped over the scorer's table with 1:08 left, exhausted. "I'm tired as hell right now," James said - and that was more than an hour after the game ended.