VT 116 begins at an intersection with US 7 in the Addison County town of Middlebury. VT 116 runs northeast along Ossie Road, paralleling the Middlebury River as a two-lane road for three blocks before turning north on Church Street. Going one block north, the route reaches a junction with VT 125, changing names to Case Street also immediately in East Middlebury. VT 116 winds north along Case Street, leaving East Middlebury and reaching Airport Road, which connects to Middlebury Airport. Continuing north through Middlebury, the route becomes a lot more rural, passing farms left and right as it bends northeast. The main north-south road near the end of a ridge, VT 116 passes a small residential neighborhood at Lindale Circle, before reaching a quarry and some dense woods. through Bristol Still known as Case Street, VT 116 passes along the western edge of a nearby ridge, continuing north as it crosses into the town of Bristol. The route soon reaches a section of Green Mountain National Forest, which runs its western edge along VT 116. After a northern turn, the route parallels the New Haven River, which along with VT 116, bypass the hamlet of New Haven Mills. At River Road, which connects the route to New Haven Mills, VT 116 turns north along the river, soon reaching downtown Bristol. Just after Green Mountain Villa Road, VT 116 junctions with VT 17. At this point, the routes become concurrent and run east along Stony Hill past Greenwood Cemetery. Turning southeast down a switchback, the routes become known as West Street, entering the center of Bristol. Now the main west-east street, passing numerous businesses before reaching North Street, where the routes change to Main Street. The routes soon leave the center of Bristol, becoming known as Rockydale Road as it runs along the northern end of Green Mountain National Forest and paralleling the New Haven River. At Lincoln Road, VT 17 and VT 116 turns north around a ridge, bypassing the hamlet of South Starksboro, near where VT 17 turns to the northeast at Drake Woods Road. VT 116 runs north and northwest through Bristol, running through flat lands and woods for a distance. Crossing into the town of Starksboro, the route remains a rural highway, soon reaching the center of Starksboro near the junction of Parsonage Road. There is not much to VT 116 through the center of Starksboro, running closer and closer to the side of a ridge before crossing into Chittenden County. Now in the town of Hinesburg, VT 116 soon crosses the La Platte River, paralleling an old alignment of itself. Passing Cedar Knoll Country Club, the route turns northwest at a junction with North Road. Now paralleling the La Platte River, VT 116 and enters the center of Hinesburg. Through Hinesburg, VT 116 is the north-south road through town, passing multiple businesses until Commerce Street, where it bends northwest and leaves downtown Hinesburg. Passing through nearby Mechanicsville, the route soon bends northeast and winds along a ridge in Hinesburg as a two-lane rural road and crossing into the town of St. George. Gaining the name Burlington Road, VT 116 turns northwest and passing a junction with the southern terminus of VT 2A, a spur of US 2. Running northwest, VT 116 remains a two-lane rural road through St. George, passing around nearby Shelburne Pond. Crossing into the town of Williston, VT 116 becomes a flat two-lane road as It approaches and crosses into the city of South Burlington, where it changes names to Hinesburg Road. Going north, the route passes several housing developments in the Butler Farms section. After Meadowland Drive, VT 116 crosses over Interstate 89. VT 116 bends northwest at Old Farm Road, running northwest through a heavily built-up section of South Burlington, turning north near Deane Street before turning north into a junction with US 2. This junction marks the northern terminus of VT 116, which continues north as Patchen Road toward Burlington.