VT 128 begins at a junction with VT 15 (Center Road) in the Chittenden County town of Essex. VT 128 runs east from VT 15 as a two-lane commercial street through downtown Essex, soon leaving the center of town. The route begins running northeast through Essex, the farms and crossing the Browns River. At Weed Road, VT 128 turns northeast even further, paralleling the Browns River through rural Essex, passing some local residences. The route turns north on Osgood Hill Road, winding along the river. Near Pettingill Road, the route bends southeast.[2]
Crossing into the town of Westford, VT 128 turns northeast through dense woods of town. The woods recede for local farms and fields, and the route soon makes an elongated curve into the center of Westford. Crossing the Browns River, VT 128, turning west near Cambridge Road, serves as the main road through the hamlet. After Brookside Road, the route turns northwest, passing through the rural sections of Westford. At Woods Hollow Road, VT 128 runs north past Westford–Milton Road, which connects to the village of Milton. The route continues north, crossing the county line into Franklin County.[2]
Now in the town of Fairfax, VT 128 crosses the Browns River, changing names to Browns River Road. The route turns northeast, crossing through more fields and woods before reaching the western end of the hamlet of Fairfax. At the junction with McNall Road, VT 128 turns east onto its right-of-way, changing names with Ramsey Road, reaching a merge with VT 104 (Main Street), which marks the northern terminus of VT 128.[2]