The Soi River (Vietnamese: Sông Sỏi) is a tributary of the Thương River in northern Vietnam. It flows through Đồng Hỷ District, Thái Nguyên Province. It originates from Mount Bo Cu at around 400 metres above sea level, in upland communes. The river has a total length of 38 km and has a basin area of 303 km2.