Kevin Durant and Russell Westbrook combined to score 54 points, more than any set of teammates had managed in a game against Miami all season.
Oklahoma City needed them to score at least three more.
That didn't happen, and an NBA Finals rematch went just as last year's title series did — to the Heat.
LeBron James had 29 points, nine assists and eight rebounds, Dwyane Wade scored 21, and the Heat survived a frantic finish to beat the Thunder 103-97 on Tuesday night, a game where Durant and Westbrook both missed potential tying 3-pointers in the final seconds.
"A great game to play," Thunder coach Scott Brooks said, "and a great game to coach."
For the Heat, it was just a little greater.
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 points for Miami, which has beaten the Thunder five straight times dating to last June's title series.
"Felt a little bit like a different month," Heat 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."
It's the first losing streak of the season for the Thunder, who had been 4-0 after losses. Serge 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.
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.
With good reason. On an emotional day, there was a wild finish.
Wade lost the ball on an ill-advised, behind-the-back dribble, and the turnover set up Durant for a two-handed dunk that got the Thunder within 96-95 with 44.1 seconds remaining.
Needing a stop on the next trip, the Thunder instead forgot to play defense. Kendrick Perkins and Ibaka both were confused on the ensuing Miami possession, and Bosh was left alone to take a pass from James and throw down a dunk that restored Miami's three-point edge.
"We went over and helped," Durant said. "We just needed to help on the backside. There was miscommunication but we still had a chance to go into overtime."
Two chances, actually.
Oklahoma City got within one when Durant made a jumper over James, but no closer. Ray Allen's two free throws with 15.6 seconds left made it 100-97, and Miami's last three points came from the line. Durant missed a 3-pointer that James contested, Westbrook wound up with a second chance that Wade defended, and the Thunder guard smacked a nearby table arguing that he was fouled.
"Part of the game," Westbrook said.
While the stars were stars, the Heat got help from one unexpected source. Chalmers was making everything, even unintended plays. Allen lost possession on what looked to be a pass to no one, but Chalmers picked up the bouncing ball on the right wing, whirled and made a 3-pointer — putting Miami up 86-79 with 8:14 left.
In the end, that cushion was necessary.
"I got going early," Chalmers said, "and I stuck with it."
The Heat came out flying, opening a quick 13-2 lead after making six of their first seven shots. About all that didn't go right for the Heat early on was James committing a foul, the first time he was called for a personal since Dec. 8.
It happened 4:03 into the game — 254 minutes and 7 seconds of on-court time since his last one — when James fouled Ibaka on a dunk attempt.
Chalmers had 12 points, matching his season high, in the opening quarter alone, and that was also Miami's lead after his layup for a 15-3 edge. When Durant headed to the bench after being called for his second personal, plus a technical, with 2:08 left in the first, the Heat led 27-16.
But even with Durant out, Oklahoma City scored the last eight points of the quarter, six coming from the line. The Thunder shot 17 of the game's first 18 free throws and finished with a 38-19 edge in tries from the stripe.
The Heat were held to two points in the first 5:05 of the third, and the Thunder grabbed the lead for the first time. Durant connected on a baseline jumper while falling out of bounds and getting fouled by James. The resulting free throw gave Oklahoma City a 58-56 edge.
With that, the back-and-forth began, and Miami found a way.
"Both teams really played up to the billing," Wade said. "An excellent basketball game."
NOTES: James scored at least 20 points for the 30th straight regular-season game and 46th overall. ... Wade is 7-1 on Christmas, and James has won six straight on the holiday. ... Miami's Mike Miller became the 48th active player to reach 10,000 points. ... The Thunder have used the same starting lineup for all 27 games. ... James passed Bernard King for 39th on the NBA career scoring list. ... Attendance was 20,300, the largest crowd for a Heat home game since they moved into AmericanAirlines Arena.