The road was originally created as Route 18S, running from Penns Grove to Atlantic City, in 1923, before becoming Route 48 in 1927. In Penns Grove, the route ended at a ferry which crossed the Delaware River to Wilmington, Delaware, connecting with Delaware Route 48 until the ferry service was terminated in 1951, when the Delaware Memorial Bridge opened. U.S. Route 40 was also designated to run along the entire length of the route between Penns Grove and Atlantic City. On two occasions, U.S. Route 40 has been relocated off portions of Route 48: once following a realignment to a ferry between New Castle, Delaware and Pennsville and again after the Delaware Memorial Bridge and New Jersey Turnpike opened in 1951. Route 48 was designated onto its current alignment in 1953, eliminating the concurrency it shared with U.S. Route 40 from Carneys Point Township to Atlantic City.
Route 48 begins at a traffic light with U.S. Route 130 and County Route 675 in Penns Grove, heading to the southeast on Main Street, a two-lane, undivided road with a speed limit of 25 mph (40 km/h) rising to 30 mph (48 km/h). County Route 675 continues west on Main Street past U.S. Route 130. The road passes through residential areas, intersecting with local roads before entering Carneys Point Township, where the speed limit increases to 40 mph (64 km/h). In Carneys Point Township, Route 48 crosses Dupont Road, becoming Harding Highway, and passes by Penns Grove High School, located on the south side of the road. The road enters a more rural setting with a 50 mph (80 km/h) speed limit and intersects County Route 601 (Golfwood Avenue) at a signalized intersection. Shortly after County Route 601, the road comes to an interchange with Interstate 295. Route 48 continues southeast through a mix of woodland and farmland, intersecting County Route 551 (Pennsville-Auburn Road) at a traffic light. Just past the County Route 551 intersection, the road intersects County Route 628 (Game Creek Road), passing by Laytons Lake before crossing over the New Jersey Turnpike. Route 48 continues southeast for about another mile, crossing Stumpy Road before ending at an intersection with U.S. Route 40.
The route was designated as Route 18S in 1923, running from Penns Grove southeast to Atlantic City along what was known as the Harding Highway. U.S. Route 40 was designated along the length of Route 18S, running east from a ferry dock in Penns Grove where the route crossed the Delaware River to Wilmington, Delaware to continue its journey west. The entire routing of Route 18S was designated Route 48 in the 1927 renumbering of New Jersey state highways, running concurrent with U.S. Route 40 its entire length. Until the Delaware Memorial Bridge opened in 1951, a ferry connected New Jersey Route 48 to Delaware Route 48 in Wilmington. U.S. Route 40 had used this ferry, but was eventually moved to a ferry that ran from New Castle, Delaware to Pennsville, with U.S. Route 40 being rerouted to follow present-day Route 49, various local roads, and County Route 551 to reach Route 48 and continue east along with that route. Following the completion of both the Delaware Memorial Bridge and the New Jersey Turnpike in 1951, U.S. Route 40 was routed off more of Route 48 onto a new alignment, joining the route at its current eastern terminus. In the 1953 renumbering of New Jersey state highways, Route 48 was designated onto its current alignment from U.S. Route 130 to U.S. Route 40, with the rest of the route dropped in favor of the U.S. Route 40 designation. The old alignment of Route 48 to the ferry terminal is now County Route 675.