New Hampshire Route 31 (abbreviated NH 31) is a 56.148-mile-long (90.361 km) north–south state highway in southern New Hampshire. It runs from Mason on the Massachusetts border, where, as Greenville Road, the road becomes Massachusetts Route 31. It passes through Greenville, Wilton, Lyndeborough, Greenfield, Bennington, Antrim, Hillsborough, Windsor, and Washington, reaching its northern terminus of Goshen at New Hampshire Route 10.