Politics & Government

NC Rep. Carla Cunningham switches party affiliation after losing March primary

Outgoing Charlotte state Rep. Carla Cunningham has switched her party affiliation.

Cunningham, who has represented north Charlotte’s District 106 in the North Carolina House as a Democrat for seven terms, is now listed as an unaffiliated voter in the State Board of Election’s database. WBT Radio first reported the switch Friday.

Cunningham lost her seat to Rev. Rodney Sadler in a March Democratic primary after drawing widespread criticism within the party for her vote alongside Republicans to override Democratic Gov. Josh Stein’s veto of an immigration bill. She drew further ire for controversial comments about immigrants after that vote.

Cunningham said Friday in a statement issued through a spokesperson that she has been a Democrat her whole life but “came to realize that I want to serve the people, not a party.”

“Being an independent thinker does not align with party politics, and I will never compromise the needs of my constituents to satisfy a political agenda,” Cunningham said in the statement.

Claudia Charles, Cunningham’s spokesperson, told The Charlotte Observer the legislator is undecided on how she will caucus in her final months in the N.C. House.

Read Next

‘Moral obligation’

She joins Rep. Tricia Cotham as the second Mecklenburg Democratic legislator to switch her party affiliation away from Democrat in recent years, though Cotham switched to the Republican Party.

Cunningham drew the most serious primary challenger of her career this year. It came just months after breaking with Democrats to allow Republicans in the General Assembly to override Stein’s veto of a bill requiring sheriffs to cooperate more with federal immigration authorities.

In a floor speech after that summer 2025 vote, Cunningham said the U.S. has been “exploited and abused by the different tactics to gain citizenship in America” and that “all cultures are not equal.” She apologized for those remarks during her reelection campaign, and on the same day, she joined a petition to remove Mecklenburg County Sheriff Garry McFadden from office. The petition alleged, in part, that McFadden threatened Cunningham ahead of the veto vote.

Sadler defeated Cunningham with 69.9% of the vote in a three-person primary in early March. He picked up high-profile endorsements from Stein and the Black Political Caucus of Charlotte-Mecklenburg. He also raked in a significant fundraising haul to bolster his campaign.

Charles said in Friday’s statement the legislator “has faced a troubling wave of hostility from individuals outside of District 106, fueled by the actions of the NC Governor and the North Carolina Democratic Party.”

“There are families in this district who are fighting every single day just to survive. We have a moral obligation to place the needs of struggling Americans above all competing agendas; including policies that would extend the resources and protections of this government to those who have entered this country unlawfully, at the expense of citizens who have long been underserved,” Cunningham said in the statement.

Mecklenburg County Democratic Party Chairman Wesley Harris told the Observer Friday he hopes Cunningham “remembers that she is in Raleigh to represent the people of her district for the rest of this year.”

“I hate it anytime anyone changes their affiliation away from the Democratic Party,” he said in a statement.

Spokespeople for the North Carolina Democratic Party did not immediately respond to a request for comment Friday on Cunningham’s move.

How will rift with Cunningham affect 2026 session?

Two days before Cunningham changed her party affiliation, The News & Observer asked the House Democratic leader if she and other swing vote Democrats were still caucusing with the three Democrats who lost their primaries, including Cunningham.

More than a dozen House Democrats joined Rep. Robert Reives, the minority leader, at the podium for a news conference about their session priorities, but Cunningham wasn’t among them, nor were the other two Democrats who lost — Rep. Shelly Willingham and Rep. Nasif Majeed.

Reives, a Chatham County Democrat, didn’t directly answer whether Cunningham has continued to attend Democrats’ private gatherings, but he said: “Nothing has changed about our contact. Nothing’s changed about anything we’ve done.”

“I think at the end of the day, where we are is this: Unfortunately, having been here 12 years, I’ve lost a lot of friends to elections, and we never know why,” Reives said.

“I know that the three of them have always been dedicated to their districts, that the three of them have always worked hard, that they’ve always been very supportive,” he said.

Reives said he was thankful that Willingham and other elder House Democrats took him in and showed him around when he was first elected, and praised Majeed and Cunningham as well.

“Carla, as you know, has been in leadership for years here, has been a wonderful person, a wonderful advocate for a lot of things that she’s done,” Reives said Wednesday.

Attempts to reach Reives directly and through a spokesperson were unsuccessful Wednesday evening.

During the first days of session, in both the House and Senate chambers a Republican announced that a sportsmen’s caucus would be meeting soon for breakfast, and that Cunningham would join them. Sportsmen’s groups generally connect recreational shooters and hunters, and at the congressional level the caucus is bipartisan.

The N&O also asked Stein earlier this month about Cunningham’s primary loss and if he had concerns about her voting with Republicans to overturn his vetoes. Stein had endorsed Cunningham’s primary opponent who defeated her.

Recently asked about the potential for more veto overrides given the rift with Cunningham, Stein told The News & Observer that anger over primaries “doesn’t change” that legislators “have their own values, their own beliefs, and they represent their districts.”

“So we’ll see how it all plays out, but I’m confident that the people who serve in this General Assembly are going to try to do what’s right for their people,” Stein said.

Cunningham did not respond to an interview request from The N&O about Stein’s comments but wrote in an email to supporters in recent weeks, “While this election marks a transition, my service is not complete,” going on to say she intends to finish out her term through December.

Republicans call Cunningham courageous, independent

Republicans reacted swiftly to Friday’s announcement.

House Speaker Destin Hall’s office posted on its X account that Cunningham “put her constituents first and trusted her own judgment, even under pressure from her party” and that “her independence is official.”

“We look forward to continuing to work with her this session,” the post said.

The Mecklenburg County Republican Party called the move “courageous.”

“We are confident that she will fulfill the remainder of her term with dignity, independent judgment, and a continued focus on the people of Mecklenburg County,” party chairman Kyle Kirby said in a statement.

This story was originally published April 24, 2026 at 6:02 PM with the headline "NC Rep. Carla Cunningham switches party affiliation after losing March primary."

Mary Ramsey
The Charlotte Observer
Mary Ramsey is the local government accountability reporter for The Charlotte Observer. A native of the Carolinas, she studied journalism at the University of South Carolina and has also worked in Phoenix, Arizona and Louisville, Kentucky. Support my work with a digital subscription
Dawn Baumgartner Vaughan
The News & Observer
Dawn Baumgartner Vaughan is the Capitol Bureau Chief for The News & Observer, leading coverage of the legislative and executive branches in North Carolina with a focus on the governor, General Assembly leadership and state budget. She has received the McClatchy President’s Award, N.C. Open Government Coalition Sunshine Award and several North Carolina Press Association awards, including for politics and investigative reporting.
Get unlimited digital access
#ReadLocal

Try 1 month for $1

CLAIM OFFER