# North Carolina Highway 96

North Carolina Highway 96 (NC 96) is a 112-mile-long (180 km) primary state highway in the U.S. state of North Carolina. It is a predominantly rural highway that travels north-south, from NC 55, west of Newton Grove, to the Virginia state line near Virgilina, Virginia, where it continues on as Virginia State Route 96. It also connects the cities of Smithfield, Selma, Zebulon, Youngsville and Oxford.

## Route description

Much of NC 96's route is through undeveloped and rural areas, though it travels through (and thus connects) the cities and towns of Virgilina, Oxford, Youngsville, Zebulon, and the Smithfield/Selma area along the way.
NC 96 begins at NC 55 at a quiet rural intersection in the far northern edge of Sampson County. From there, NC 96 almost immediately enters Johnston County and winds primarily northward through southern Johnston County; crossing over NC 50 in Peacocks Crossing and Interstate 40 just north of Peacocks Crossroads along the way.
Near Four Oaks, NC 96 turns northeastward to parallel Interstate 95 before intersecting and converging with US 701 and crossing over I-95 alongside it. From there, the highways immediately run into US 301, where NC 96 joins US 301 (while US 701 terminates there), crosses over the far eastern edge of Holts Lake, and enters the Smithfield area. NC 96 goes directly through the downtown districts of both Smithfield and Selma, crossing over Business Route US 70 and the main US 70 highway itself and being joined by NC 39 along the way. NC 96 leaves its concurrency with US 301 and NC 39 almost immediately after traveling through downtown Selma and continues its northbound trek.
The rest of the highway's journey through Johnston County is mostly rural, with intersections with NC 42 and NC 231 (the latter in the small town of Hocutts Crossroads). NC 96 enters eastern Wake County and soon enters Zebulon. The highway crosses over NC 97 in Zebulon's downtown district and crosses over US 64\US 264 on the other side of town. NC 96 then cuts a northwesterly path through the northeastern part of the county, crossing over US 401 near Rolesville and NC 98 near Wake Forest.
NC 96 enters the southwestern side of Franklin County, soon entering Youngsville. In Youngsville, NC 96 takes a sharp western turn to join US 1 Alternate for a brief concurrency. Outside of town, NC 96 splits off from US 1 Alternate and crosses over the main US 1 highway before winding a mostly northwestern path through rural Franklin County and Granville County farmland. Shortly after entering Granville County, NC 96 takes a sharp turn northward at a four-way intersection near Brassfield and heads north to an intersection with NC 56 in Wilton. NC 96 continues northward from here until its intersection with Interstate 85 herald's the highway's arrival in Oxford.
In Oxford, NC 96 joins US 15 to go through Oxford's downtown district before both highways join Business Route US 158 to head northward out of town. NC 96 and Business 158 split off from US 15 to head westward for about a mile before NC 96 splits off northward, where the highway crosses over mainline US 158 before beginning the rest of its almost entirely solo journey through rural northwestern Granville County. NC 96 passes through the tiny unincorporated community of Oak Hill before joining NC 49 less than a mile away from the North Carolina/Virginia border. Together, the two highways continue into Virgilina, where they continue on as Virginia State Route 96 and Virginia State Route 49 respectively. SR 96 ends at US 501 just south of Cluster Springs, Virginia shortly afterwards.

## History

The current NC 96 was established in 1940 as a renumbering of NC 562; it ran from NC 56, in Wilton, to Virgilina, Virginia. In 1952, NC 96 was extended south as a new primary routing to Youngsville, replaced NC 98 and NC 264 to Zebulon, new primary routing to Selma, concurrency with US 301 to Four Oaks, and finally new primary routing to end at NC 55. Around 1960, NC 96 was adjusted in the Four Oaks area to accommodate I-95; it was placed on concurrency briefly with US 701, leaving behind part of US 301 and Boyette Road (SR-1182).
The first NC 96 existed from 1930-1940; it originally traversed from NC 90, near Taylorsville, south to NC 17, in Hickory. In 1934, it was extended further south to NC 73, in Propst Crossroads, replacing part of NC 17. Between 1931-1936, NC 96 was rerouted at the Catawba River onto a new crossing at Shiloh Church Road. In 1940, the entire route was renumbered to NC 127.

### North Carolina Highway 562

North Carolina Highway 562 (NC 562) was established as a new primary routing from NC 56, in Wilton, to Virgilina, at the Virginia state line. In 1940, NC 562 was renumbered in favor of NC 96 to match Virginia (which renumbered).

## Major intersections

| County | Location | mi | km | Destinations | Notes |
| Sampson | ​ | 0.0 | 0.0 | NC 55 (Harnett-Dunn Highway) – Newton Grove, Dunn | |
| Johnston | Peacocks Crossroads | 4.6 | 7.4 | NC 50 – Benson, Newton Grove | |
| Johnston | ​ | 5.3– 5.4 | 8.5– 8.7 | I-40 – Benson, Newton Grove | Exit 334 (I-40) |
| Johnston | Four Oaks | 15.2– 15.6 | 24.5– 25.1 | I-95 / US 301 south / US 701 south / Devils Racetrack Road – Newton Grove, Wilson, Benson | Exit 90 (I-95); brief concurrency with US 701 at its northern terminus; Southern end of US 301 concurrency |
| Johnston | Smithfield | 20.1 | 32.3 | US 70 Bus. (Market Street) to I-95 | |
| Johnston | Selma | 22.6 | 36.4 | US 70 / NC 39 south to I-95 – Clayton, Goldsboro | Southern end of NC 39 concurrency |
| Johnston | Selma | 24.1 | 38.8 | US 301 / NC 39 north (Pollock Street) / Richardson Street – Kenly | Northern end of US 301/NC 39 concurrencies |
| Johnston | Jordan | 33.1 | 53.3 | NC 42 – Clayton, Wilson | |
| Johnston | Hocutts Crossroads | 38.6 | 62.1 | NC 231 – Wendell, Middlesex | |
| Wake | Zebulon | 45.2 | 72.7 | US 64 Bus. west / NC 97 (Gannon Avenue) – [[, North Carolina|]], [[, North Carolina|]] | Southern end of US 64 Bus. Concurrency |
| Wake | Zebulon | 45.9– 46.1 | 73.9– 74.2 | US 64 / US 264 / US 64 Bus. ends – Rocky Mount, Raleigh | Exit 435 (US 64); Northern end of US 64 Bus. concurrency |
| Wake | ​ | 56.1 | 90.3 | US 401 (Louisburg Road) – Rolesville, Raleigh, Louisburg | |
| Wake | ​ | 57.3 | 92.2 | NC 98 (Wait Avenue) – Wake Forest, Bunn | |
| Franklin | Youngsville | 62.6 | 100.7 | US 1A south / Holden Road – Wake Forest | Southern end of US 1A concurrency |
| Franklin | Youngsville | 63.2 | 101.7 | US 1A north (Park Avenue) – Franklinton | Northern end of US 1A concurrency |
| Franklin | Youngsville | 64.2 | 103.3 | US 1 – Raleigh, Henderson | |
| Granville | Wilton | 74.1 | 119.3 | NC 56 – Creedmoor, Franklinton | |
| Granville | ​ | 85.5– 85.6 | 137.6– 137.8 | I-85 – Henderson, Durham | Exit 204 (I-85) |
| Granville | Oxford | 86.7 | 139.5 | US 15 south (Hillsboro Street) / Broad Street | Southern end of US 15 concurrency |
| Granville | Oxford | 86.9 | 139.9 | US 158 Bus. east (Williamsboro Street) / Bank Street | Southern end of US 158 Bus. concurrency |
| Granville | Oxford | 87.7 | 141.1 | US 15 north (College Street) – Clarksville | Northern end of US 15 concurrency |
| Granville | Oxford | 88.2 | 141.9 | US 158 Bus. west (Roxboro Road) / Goshen Street – Roxboro | Northern end of US 158 Bus. concurrency |
| Granville | ​ | 88.6 | 142.6 | US 158 (Oxford Loop) | |
| Granville | ​ | 106.6 | 171.6 | NC 49 south – Roxboro | Southern end of NC 49 concurrency |
| Granville | ​ | 106.7 | 171.7 | SR 49 north / SR 96 west (Florence Avenue) – Virgilina | Northern terminus; Virginia state line; Northern end of NC 49 concurrency |
| 1.000 mi = 1.609 km; 1.000 km = 0.621 mi Concurrency terminus ||||||