The headwaters of the river rise south of Double Peak and flows westwards, joined by two minor tributaries; Coondoondoo Creek and Pink Hills Creek. The river forms its confluence with the Gascoyne River near the Police Station Woolshed. The Thomas flows through the Murrumburra Pool on its way to the Gascoyne. The river descends 169 metres (554 ft) over its 127-kilometre (79 mi) course.
Significant gold and tin deposits have been found in the Thomas River Gascoyne gold fields.