The Kanhar originates at Gidha-Dhodha on the Khudia plateau in Jashpur district of Chhattisgarh. It initially flows north forming the boundary with Garhwa district in Palamu division of Jharkhand. Thereafter, it flows for about 100 kilometres (62 mi) through Surguja district of Chhattisgarh. Subsequently, it runs parallel to the Son in Garhwa district and turns north-west and flowing through Sonbhadra district in Mirzapur division of Uttar Pradesh. It confluences with the Son River to the north-east of the village of Kota. It has a rocky bed almost throughout its course. A rapid mountain torrent, flowing through forested areas, it is a dangerous stream.
A number of waterfalls are located along the track of the river. Pavai Falls near Kothali village (Balrampur) is of about 61 metres (200 ft). Gur-Sindhu Falls is located in Chinia Community block, some 40 kilometres (25 mi) from Garhwa. Sukhdari Falls is 30 metres (100 ft) high. It located near the meeting point of the borders of Chhattisgarh, Jharkhand and Uttar Pradesh.
Kanhar Hydroelectric Project and Kanhar River Development Scheme are centred on Kanhar Reservoir at Baradih in Garhwa district. There is another dam/ reservoir near Chinia village. The Kanhar Sinchai Pariyojana is located downstream of the confluence of the Pagan River with the Kanhar near village Sugawaman in Tehsil Dudhi of Sonebhadra district.