North Carolina Tar Heels guard Cormac Ryan (3) and forward Harrison Ingram (55) react to a basket by guard Elliot Cadeau (2) during the second half against the Duke Blue Devils at Cameron Indoor Stadium. Rob Kinnan-USA TODAY Sports

Watch: North Carolina waves bye to Cameron Crazies after sweep of Duke

Aren't rivalries fun? 

Following a massive ACC-title clinching win over No. 9 Duke on the road Saturday night, No. 7 North Carolina rubbed salt in the wound, waving goodbye to a stunned crowd of Cameron Crazies. 

The Tar Heels played front-runners throughout on Saturday, but things got hairy late. 

Leading by as many as 15 points, North Carolina was seemingly in control, nursing an eight-point lead with 1:39 left in the second half. However, they needed to fend off two mini-runs late by Duke, with a clutch jumper from guard Elliot Cadeau and two game-sealing free-throws by point guard Cormac Ryan. 

Ryan closing things out was fitting, as he was a thorn in the Blue Devils' side all night long. The senior paced the Tar Heels effort, leading all scorers with 31 points on 8-of-12 shooting from the field and 6-of-8 from beyond the arc. 

Forward Harrison Ingram was the only other North Carolina player to finish in double figures, recording 14 points to go along with a team-high 10 rebounds. 

As usual, the matchup between the historic adversaries had its fair share of controversial calls and, of course, some on-court shenanigans. One such moment came late in the first half when Duke center Kyle Filipowski appeared to trip Ingram on purpose

However, Filipowski, who recently escaped severe injury after getting caught in a court-rushing crossfire, walked away from the altercation limping, implying that the contact with Ingram was unintentional. 

For North Carolina (24-6, 16-3), the victory clinched a season sweep of Duke and an ACC title outright for the first time since 2016-17. 

More must-reads:

TODAY'S BEST
Nuggets teach Timberwolves it's never easy to knock out the champion
Panthers come from behind to take Game 4 vs. Bruins
Brad Keselowski breaks 110-race winless streak at Darlington
Pacers blow out Knicks on Mother’s Day, even series at 2-2
Hawks GM 'shocked' that his team won the NBA Draft Lottery
Prolific former Brewers, A's slugger announces retirement
Watch: Padres star passes father on all-time home runs list
Saints to sign veteran offensive lineman
Smother's Day: Pacers shut down Knicks in first half of Game 4
Flyers goaltender suspended from international play for three years
Pistons make wrong kind of history at NBA Draft Lottery
Watch: Pacers C Myles Turner makes absurd three-pointer in first quarter vs. Knicks
Hawks win 2024 NBA Draft Lottery
Giants place key outfielder on injured list
Broncos release former Super Bowl champion WR
Novak Djokovic thinks water bottle incident may have played role in surprising loss
Steelers agree to deal with veteran CB
Bruins captain out for Game 4 vs. Panthers
Veteran WR announces retirement from NFL
Mavericks come from behind to down Thunder, take 2-1 series lead

Want more sports news?

Join the hundreds of thousands of fans who start their day with Yardbarker's Morning Bark, the best newsletter in sports.