Formed by the confluence of the Theresa Creek and Deep Creek, Shannon Brook rises on the Richmond Range about 8 kilometres (5.0 mi) southwest of Mummulgum. The river flows generally northeast, east southeast and east, joined by two minor tributaries before reaching its confluence with the Richmond River near Tatham, about 13 kilometres (8.1 mi) southeast of Casino. The river descends 91 metres (299 ft) over its 58 kilometres (36 mi) course.
The river is believed to be named in honour of J. C. Shannon who came from the Clarence Valley and took up Stratheden for Dr. John Dobie in 1842. He camped by the creek, hence the name Shannon Brook. J. C. Shannon was known locally as Doc Shannon.