Teddy Bridgewater threw three first-half touchdowns and No. 19 Louisville scored on its first six possessions, and then had to hold North Carolina with a late goal-line stand to come away with a 39-34 victory on Saturday.
Bryn Renner settled down from a rough first half to rally the Tar Heels (1-2) from a 36-7 deficit with four second-half touchdowns, including a screen pass to Romar Morris for a 50-yard touchdown with 1:45 remaining.
North Carolina's Norkeithus Otis then forced Adrian Bushell to fumble the ensuing kickoff, and the Tar Heels recovered at the Cardinals' 10. But after moving to the 3, North Carolina was penalized for a false start and Renner's final pass two plays later was broken up by Andrew Johnson in the end zone.
Bridgewater threw for 218 of his 279 yards in the first half for the Cardinals (3-0). He finished 23 of 28 passing for 279 yards.
Renner finished with five TD passes.