The current routing of NC 146 was designated around 1991 as a renumbering of North Carolina Highway 280. NC 280 was rerouted at NC 191 to head directly east to U.S. Route 25. As a result, the former routing of NC 280 from NC 191 to Skyland became NC 146.