Salmo is a village in the West Kootenay region of southeastern British Columbia, Canada. It is located in the Salmo River Valley, surrounded by the Selkirk Mountain range.
Situated at the junction of the Crowsnest Highway and Highway 6, Salmo is about a 30 minute drive from the communities of Castlegar, Nelson, and Trail. Salmo is the western terminus of the Salmo-Creston highway constructed in the late 1950s (now Highway 3) as a shortcut to avoid the long route north to Nelson and crossing Kootenay Lake by ferry between Balfour and Kootenay Bay.
Originally known as Salmon Siding (named for the original name of the Salmo River, i.e. the Salmon River), the village was founded as a small mining town near the Nelson and Fort Sheppard Railway during a gold rush in 1896. The name of the town was changed to Salmo to avoid confusion with other places with similar names. When dams were created along the Columbia River in the 1960s and 1970s, Salmo's fish stocks were depleted.