From its source in the foothills of the Great Dividing Range below Red Hill, the Campaspe River rises in the
Wombat State Forest northwest of and southwest of , near and Firth Park, a local camping ground and historical area. The river then flows west of the township of and continues north through the town of . The middle reaches of the river are dominated by
Lake Eppalock, a constructed
reservoir. The
Coliban River, the most significant tributary of the Campaspe, also flows into Lake Eppalock. Towns located on the river in this area include located just south of Eppalock and , located just below Eppalock. The towns of and lie on the river's lower reaches. The river meets its
confluence with the Murray River west of the town of Echuca, located adjacent to the
state border between Victoria and
New South Wales. In addition to the Coliban River, the Campaspe River is joined by six minor tributaries and passes through the Campaspe Weir. The river descends over its
course. The river is crossed three times by the
Calder Highway near Kyneton, and by the
McIvor Highway near Eppalock. The
Midland Highway and
Northern Highway duplex crosses the river at Elmore, and the Murray Valley Highway and Northern Highway duplex crosses the river at
Echuca. ==Etymology==