The Salmo River is a fifth order stream that originates in the Selkirk Mountains approximately 12 km southeast of Nelson, B.C. and flows south to its confluence with the Pend d’Oreille River at the Seven Mile Reservoir. The river is 60 km long and has a drainage area of 1230 km2. There are two Water Survey of Canada Hydrometric Stations measuring flow, the mean annual discharge is 31.5 m3/s. The elevation at its mouth is 564 m above sea level and rises to 2,343 m in the headwaters near Ymir Mountain. Major tributaries to the Salmo River are Apex, Clearwater, Hall, Barrett, Ymir, Porcupine, Hidden, Boulder Mill, Erie, and Sheep creeks, and the South Salmo River. There are no major lakes or reservoirs in the river system to attenuate flood flows.
There are several small headwater lakes in the watershed including Barrett, Lost, Panther, Curtis, Rosebud, and Waldie (Wulf).
The Salmo River Watershed lies within two biogeoclimatic zones: the Interior Cedar-Hemlock sub-zone (lower elevations), and the Englemann Spruce Sub-alpine Fir sub-zone.