The 2024 North Carolina Senate election was held on November 5, 2024, to elect all 50 members to North Carolina's Senate. The election coincided with elections for other offices, including for the U.S. President, U.S. House of Representatives, Council of State, and state house. The primary election was held on March 5, 2024. Ahead of the election, districts were redrawn and passed the General Assembly in Senate Bill 758. Republicans had no change in seats, leaving their supermajority to 30 out of 50 seats.

Results summary DistrictIncumbent PartyElectedParty 1st Bobby Hanig Rep Bobby Hanig Rep 2nd Norman Sanderson Rep Norman Sanderson Rep 3rd Bob Brinson Rep Bob Brinson Rep 4th Buck Newton Rep Buck Newton Rep 5th Kandie Smith Dem Kandie Smith Dem 6th Michael Lazzara Rep Michael Lazzara Rep 7th Michael Lee Rep Michael Lee Rep 8th Bill Rabon Rep Bill Rabon Rep 9th Brent Jackson Rep Brent Jackson Rep 10th Benton Sawrey Rep Benton Sawrey Rep 11th Lisa Stone Barnes Rep Lisa Stone Barnes Rep 12th Jim Burgin Rep Jim Burgin Rep 13th Lisa Grafstein Dem Lisa Grafstein Dem 14th Dan Blue Dem Dan Blue Dem 15th Jay Chaudhuri Dem Jay Chaudhuri Dem 16th Gale Adcock Dem Gale Adcock Dem 17th Sydney Batch Dem Sydney Batch Dem 18th Mary Wills Bode† Dem Terence Everitt Dem 19th Val Applewhite Dem Val Applewhite Dem 20th Natalie Murdock Dem Natalie Murdock Dem 21st Tom McInnis Rep Tom McInnis Rep 22nd Mike Woodard Dem Sophia Chitlik Dem 23rd Graig Meyer Dem Graig Meyer Dem 24th Danny Britt Rep Danny Britt Rep 25th Amy Galey Rep Amy Galey Rep 26th Phil Berger Rep Phil Berger Rep 27th Michael Garrett Dem Michael Garrett Dem 28th Gladys Robinson Dem Gladys Robinson Dem 29th Dave Craven Rep Dave Craven Rep 30th Steve Jarvis Rep Steve Jarvis Rep 31st Joyce Krawiec† Rep Dana Caudill Jones Rep 32nd Paul Lowe Jr. Dem Paul Lowe Jr. Dem 33rd Carl Ford Rep Carl Ford Rep 34th Paul Newton Rep Paul Newton Rep 35th Todd Johnson Rep Todd Johnson Rep 36th Eddie Settle Rep Eddie Settle Rep 37th Vickie Sawyer Rep Vickie Sawyer Rep Natasha Marcus† Dem 38th Mujtaba Mohammed Dem Mujtaba Mohammed Dem 39th DeAndrea Salvador Dem DeAndrea Salvador Dem 40th Joyce Waddell Dem Joyce Waddell Dem 41st New seat Caleb Theodros Dem 42nd Rachel Hunt† Dem Woodson Bradley Dem 43rd Brad Overcash Rep Brad Overcash Rep 44th Ted Alexander Rep Ted Alexander Rep 45th Dean Proctor† Rep Mark Hollo Rep 46th Warren Daniel Rep Warren Daniel Rep 47th Ralph Hise Rep Ralph Hise Rep 48th Tim Moffitt Rep Tim Moffitt Rep 49th Julie Mayfield Dem Julie Mayfield Dem 50th Kevin Corbin Rep Kevin Corbin Rep † - Incumbent not seeking re-election + Summary of the November 5, 2024 North Carolina Senate election Party Candidates Votes Seats % Up Won +/– Republican 42 2,601,321 47.987 30 30 Democratic 50 2,719,418 50.165 20 20 Libertarian 13 76,435 1.410 0 0 We the People 1 17,569 0.324 0 0 Constitution 1 6,007 0.111 0 0 Write-in 1 193 0.004 0 0 Total 108 5,420,943 100 50 50

Close races Districts where the margin of victory was under 10%:

Retiring incumbents

Democrats District 18: Mary Wills Bode retired. District 41: Natasha Marcus retired to run for Insurance Commissioner. District 42: Rachel Hunt retired to run for Lieutenant Governor.

Republicans District 31: Joyce Krawiec retired. District 45: Dean Proctor retired.

Incumbents defeated in the primary election

Democrats District 22: Mike Woodard lost renomination to Sophia Chitlik.

Newly created seats District 41 (Mecklenburg County)

Predictions SourceRankingAs of Sabato's Crystal Ball | October 23, 2024

Detailed results

Districts 1–25 District 1 The new 1st district includes all of Bertie, Camden, Currituck, Dare, Gates, Hertford, Northampton, Pasquotank, Perquimans, and Tyrrell counties. It includes the home of incumbent Republican Bobby Hanig, who has represented the 3rd district and its predecessors since 2022.

District 2 The new 2nd district includes all of Carteret, Chowan, Halifax, Hyde, Martin, Pamlico, Warren, and Washington counties. It includes the home of incumbent Republican Norman Sanderson, who has represented the 1st district and its predecessors since 2013.

District 3 The new 3rd district includes all of Beaufort, Craven, and Lenoir counties. It includes the home of incumbent Republican Bob Brinson, who has represented the 2nd district since 2024. Brinson was appointed on July 23, 2024, following the resignation of Jim Perry, who had previously announced his retirement on December 15, 2023.

District 4 The new 4th district includes all of Greene, Wayne, and Wilson counties. The incumbent is Republican Buck Newton, who has represented the 4th district since 2023.

District 5 The new 5th district includes all of Edgecombe and Pitt counties. The incumbent is Democrat Kandie Smith. who has represented the 5th district since 2023.

District 6 The new 6th district includes all of Onslow County. The incumbent is Republican Michael Lazzara, who has represented the 6th district since 2021.

District 7 The new 7th district includes most of New Hanover County. The incumbent is Republican Michael Lee, who has represented the 7th district and its predecessors since 2021.

District 8 The new 8th district includes all of Brunswick and Columbus counties, as well as a small portion of New Hanover County. The incumbent is Republican Bill Rabon, who has represented the 8th district since 2011.

District 9 The new 9th district includes all of Bladen, Duplin, Jones, and Pender counties, as well as most of Sampson County. The incumbent is Republican Brent Jackson, who has represented the 9th district and its predecessors since 2011.

District 10 The new 10th district includes all of Johnston County. The incumbent is Republican Benton Sawrey, who has represented the 10th district since 2023.

District 11 The new 11th district includes all of Franklin, Nash, and Vance counties. The incumbent is Republican Lisa Stone Barnes has represented the 11th district since 2021.

District 12 The new 12th district includes all of Harnett and Lee counties, as well as a small portion of Sampson County. The incumbent is Republican Jim Burgin, who has represented the 12th district since 2019.

District 13 The new 13th district includes portions of southern Wake County. The incumbent is Democrat Lisa Grafstein, who has represented the 13th district since 2023.

District 14 The new 14th district includes portions of eastern Wake County. The incumbent is Democratic Minority Leader Dan Blue, who has represented the 14th district since 2009.

District 15 The new 15th district includes portions of central Wake County. The incumbent is Democrat Jay Chaudhuri, who has represented the 15th district and its predecessors since 2016.

District 16 The new 16th district includes portions of western Wake County. The incumbent is Democrat Gale Adcock, who has represented the 16th district since 2023.

District 17 The new 17th district includes portions of western Wake County. The incumbent is Democrat Sydney Batch, who has represented the 17th district since 2021.

District 18 The new 18th district includes all of Granville County, as well as portions of northern Wake County. The incumbent is Democrat Mary Wills Bode, who has represented the 18th district since 2023. On December 14, 2023, Bode announced she would retire after one term in office.

District 19 The new 19th district includes portions of Cumberland County. The incumbent is Democrat Val Applewhite, who has represented the 19th district since 2023.

District 20 The new 20th district includes all of Chatham County, as well as portions of southern Durham County. The incumbent is Democrat Natalie Murdock, who has represented the 20th district since 2020.

District 21 The new 21st district includes all of Moore County, as well as most of Cumberland County. The incumbent is Republican Tom McInnis, who has represented the 21st district and its predecessors since 2015.

District 22 The new 22nd district includes most of Durham County. The incumbent is Democrat Mike Woodard, who has represented the 22nd district since 2013.

District 23 The new 23rd district includes all of Caswell, Orange, and Person counties. The incumbent is Democrat Graig Meyer, who has represented the 23rd district since 2023.

District 24 The new 24th district includes all of Hoke, Robeson, and Scotland counties. The incumbent is Republican Danny Britt, who has represented the 24th district and its predecessors since 2017.

District 25 The new 25th district includes all of Alamance County, as well as portions of northern Randolph County. The incumbent is Republican Amy Galey, who has represented the 25th district and its predecessors since 2021.

Districts 26–50

District 26 The new 26th district includes all of Rockingham County, as well as most of Guilford County. The incumbent is Republican President pro tempore Phil Berger, who has represented the 26th district and its predecessors since 2001.

District 27 The new 27th district includes portions of western Guilford County. The incumbent is Democrat Michael Garrett, who has represented the 27th district since 2019.

District 28 The new 28th district includes potions of central Guilford County. The incumbent is Democrat Gladys Robinson, who has represented the 28th district since 2011.

District 29 The new 29th district includes all of Anson, Montgomery, and Richmond counties, as well as most of Randolph County, and portions of eastern Union County. The incumbent is Republican Dave Craven, who has represented the 29th district and its predecessors since 2020.

District 30 The new 30th district includes all of Davidson and Davie counties. The incumbent is Republican Steve Jarvis, who has represented the 30th district and its predecessors since 2021.

District 31 The new 31st district includes all of Stokes County, as well as most of Forsyth County. The incumbent is Republican Joyce Krawiec, who has represented the 31st district since 2014. On December 4, 2023, Krawiec announced she would retire after six terms.

District 32 The new 32nd district includes portions of southern Forsyth County. The incumbent is Democrat Paul Lowe Jr., who has represented the 32nd district since 2015.

District 33 The new 33rd district includes all of Rowan and Stanly counties. The incumbent is Republican Carl Ford, who has represented the 33rd district since 2019.

District 34 The new 34th district includes most of Cabarrus County. The incumbent is Republican Majority Leader Paul Newton, who has represented the 34th district and its predecessors since 2017.

District 35 The new 35th district includes most of Union County, as well as a small portion of southern Cabarrus County. The incumbent is Republican Todd Johnson, who has represented the 35th district since 2019.

District 36 The new 36th district includes all of Alexander, Surry, Wilkes, and Yadkin counties. The incumbent is Republican Eddie Settle, who has represented the 36th district since 2023.

District 37 The new 37th district includes all of Iredell County, as well as a small portion of northern Mecklenburg County. It includes the homes of incumbent Republican Vickie Sawyer, who has represented the 34th district since 2019, and incumbent Democrat Natasha Marcus, who has represented the 41st district since 2019. On November 14, 2023, Marcus announced she would retire after three terms, announcing a run for Insurance Commissioner on December 19, 2023.

District 38 The new 38th district includes portions of northern Mecklenburg County. The incumbent is Democrat Mujtaba Mohammed, who has represented the 38th district since 2019.

District 39 The new 39th district includes portions of southwestern Mecklenburg County. The incumbent is Democrat DeAndrea Salvador has represented the 39th district since 2021.

District 40 The new 40th district includes portions of eastern Mecklenburg County. The incumbent is Democrat Joyce Waddell, who has represented the 40th district since 2015.

District 41