National Highway 31 extends from Barhi
. This 1,125 km-long stretch spans across the states of Jharkhand, Bihar
, West Bengal
and Assam and touches some major cities and towns on its way.
National Highway 31 starts off from its junction with National Highway 2 at Barhi and runs northwards through Jhumri Tilaiya and Kodarma, a total distance of 44 km, to enter Bihar near Rajauli. Rajauli is 27 km north-west of Kodarma, in Bihar.
In Bihar, the National Highway 31 travels northwards through Akbarpur, Nawada and Bihar Sharif, before reaching Bakhtiyarpur. Bakhtiyarpur is the starting/ending point of National Highway30. The National Highway 31 then becomes east-bound, touches Begusarai and Khagaria, before turning north near Naugacchia to reach Purnia and eventually to leave the state past Baisi to enter West Bengal. The highway is 393 km-long in Bihar.
In West Bengal, Dalkola is the first major settlement that falls on National Highway 31. The highway runs north-east almost parallel to state’s border with Bihar, makes a brief entry back into Bihar to touch Kishanganj before re-entering West Bengal and running past Islampur, Chopra, Sivok and Birpara to leave the state near Kumargram to enter Assam. National Highway 31 has a total length of 366 km in West Bengal.
In Assam, the highway passes eastwards through Kochugaon, Bongaigaon, Nalbari and Charali before terminating at Amingaon, at the junction of National Highway 37. National Highway 31 is 322 km-long in Assam.