DURHAM, N.C. --- Jamison Crowder scored with 13 seconds remaining and Duke defeated North Carolina, 33-30, for its first victory in the series since 2003 and just its second since 1991.
Carolina rallied from a 23-9 deficit to lead 30-26 on Giovani Bernard's fumble recovery touchdown with just 3:12 to play, but Duke drove 87 yards on 14 plays for the game-winning score.
Bernard passed the 2,000-yard mark in career rushing in just his 19th career game with 143 yards on 24 carries, but the Tar Heels fell to 5-3, 2-2 in Atlantic Coast Conference play.
Sean Renfree finished 23 of 36 for 276 yards and three Blue Devil backs, led by Josh Snead with 99, rushed for at least 50 yards.
Casey Barth's 30-yard field goal capped a 10-play, 60-yard drive to open the scoring, but Duke (6-2, 3-1 ACC) answered with a quick touchdown and led until Bernard's unlikely late score.
Carolina moved the ball with relative ease on the opening drive, highlighted by a 39-yard catch-and-run by Bernard on a pass from Marquise Williams. But the drive stalled in the red zone and Barth came on for the first of his three field goals to make it 3-0.
The Tar Heels appeared to have the ball back after a Darien Rankin interception on the ensuing Duke possession, but Kevin Reddick was flagged for roughing the passer to continue the drive. Renfree hit Conner Vernon to get the ball inside the Carolina 20, and Anthony Boone punched it in from two yards out to give the Blue Devils a 7-3 advantage.
The two teams traded field goals for most of the rest of the half before Jela Duncan's 2-yard scoring run gave Duke its biggest lead of the game at 20-6 with 4:25 remaining in the second.
Barth and Martin each made a third field goal to make it 23-9 entering the final quarter, and Carolina got a key defensive stop on the first play of the fourth. On 4th-and-1 at the Duke 48, Sylvester Williams stuffed Walt Canty on a keeper play to give the Tar Heels great field position.
And UNC would capitalize almost immediately thanks to a key fourth down conversion. On 4th-and-6 at the Duke 43, Renner hit Eric Ebron over the middle for 34 yards to put Carolina back in the red zone. Three Bernard carries later, the Tar Heels were back within a touchdown at 23-16.
Martin's fourth field goal of the game made it 26-16 with 9:22 remaining but Carolina scored on its next two possessions to set up a wild finish.
Bryn Renner, who finished 19 of 32 with 198 yards and two touchdowns, capped a 10-play, 75-yard drive with a 5-yard scoring strike to Sean Tapley to make it 26-23 with 6:28 to play. Carolina forced a quick three-and-out and took over at its own 9 with under five minutes remaining.
After first-down completions to Tapley and Ebron got the Tar Heels to their 40, Renner hit Erik Highsmith over the middle for a big gainer. Highsmith was stripped of the ball by Jordon Byas at the Duke 24, but Bernard outmuscled Canty for the ball and took it into the end zone for the go-ahead touchdown.
But with 3:12 remaining, Renfree led Duke on a final scoring drive that culminated in the touchdown pass to Crowder. Vernon had catches of 29 and 15 yards on the drive and finished with six receptions for 124 yards on the night.
Bernard finished with 209 all-purpose yards and passed Curtis Johnson (1,999) and Ken Willard (1,949) for 11th place on the UNC career rushing chart. His two touchdowns give him 12 for the season and 26 for his career.