The Duncan River originates at a pass between Mount Duncan of the Selkirk Mountains and Silent Mountain in the Purcell Mountains and flows south through the Purcell Trench. It flows into Duncan Lake, a natural lake that has been enlarged by Duncan Dam. A short distance below the dam, the Duncan River is joined by the Lardeau River, its largest single tributary. From here the river continues south to join the Kootenay River at the North Arm of Kootenay Lake.