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.