Route 31 begins in
Dudley at the
Connecticut border, where it is known as Dresser Hill Road. Dresser Hill Road begins in
Quinebaug, Connecticut, at
Route 197 where it is a short (approximately ) local road erroneously signed as
Connecticut Route 31 changing to Route 31 at the Massachusetts state line, then proceeding through Dudley and into
Charlton, winding over Dresser Hill with several moderately steep grades and some tight corners. In Charlton, it intersects
U.S. Route 20 a few miles east of the
I-90 and
I-84 interchange. This provides its only connection with an interstate highway. In Charlton, it is known as Dresser Hill Rd, Main St, Masonic Home Rd, Brookfield Rd, City Depot Rd and New Spencer Rd. Other junctions include Mugget Hill Rd, Old Worcester Rd, Central Depot Rd and Little Mugget Rd. Route 31 then enters
Spencer, where it parallels the Podunk Pike (
Route 49) for several miles. As Charlton Road, it passes the Spencer State Forest. In the center of
Spencer , it crosses
Route 9. It then turns north towards
Paxton; this stretch is scenic and hilly. Several warning signs are seen here for sharp corners, warning of a maximum safe speed of . Most of Route 31 in
Spencer was re-paved recently. After a couple long, sweeping corners through a forest of pine trees, Route 31 enters Paxton. Paxton Center School comes after a treed-in section. The intersections of Route 31,
Route 122, and
Route 56 comprise Paxton Center. Route 31 is variously known as West Street and Holden Street in Paxton; it runs east–west in this section. It passes over a hill past Richards Memorial Library, then uses Grove Street for approximately . In
Holden, Route 31 passes Asnebumskit Pond and is bridged over Kendall Reservoir. After the intersection with
Route 122A it passes Gale Free Public Library and heads north once again. The road heads into an increasingly rural area as the hills get steeper and longer. Route 31 then enters
Princeton and begins climbing very steeply; it gains about in approximately . Entering the center of Princeton, it joins Route 62 and turns east to avoid going over
Mount Wachusett. The mountain is instead connected by Mountain Road. After separating from
Route 62, Route 31 joins
Route 140 and becomes Fitchburg Road near Paradise Pond. It passes through a portion of
Leominster State Forest in
Westminster before an interchange with a freeway segment of
Route 2. After this interchange, Route 31 becomes a city street, having shared roadway with
Route 2A and a
wrong-way concurrency with
Route 12. It then passes through downtown
Fitchburg. As it leaves Fitchburg it is called Ashby State Road. In
Ashby, it connects with
Route 119 before reaching the
New Hampshire state border, where it becomes
New Hampshire Route 31. The stretch of Route 31 from Paxton Center to Holden Center is named the Chief Robert J. Mortell Memorial Highway, after Paxton
chief of police Robert Mortell, who was killed in the line of duty on February 1, 1994, in the deeply wooded area bordering Route 31. ==Major intersections==