Concentrations of heavy metals (Cd, Cr, Cu, Ni, Pb, and Zn) were measured in water, sediments, Ceratophyllum (hornwort), and Bellamya sp. (edible snail) from residential, mixed (industrial and commercial), and agricultural areas with rural rivers in the Taihu Lake region, China. Zn concentrations were the highest, whereas Cd concentrations were the lowest among the six metals in water, sediments, and aquatic organisms. Cd was mainly present in the acid-soluble fraction, Cr in the residual fraction, and Pb in the reducible fraction of sediments. Heavy metal concentrations in water, sediments, and aquatic organisms in the three areas followed the order of the mixed area > residential area > agricultural area. Heavy metal concentrations in aquatic organisms were not only related to total metal concentrations in water and sediments but also to metal speciation concentrations in sediments. In addition, the bio-concentration factor (BCF) values of Cr, Cu, Pb, and Zn for Bellamya sp. were higher than those for Ceratophyllum, whereas the BCF values of Cd and Ni for Bellamya sp. were lower than those for Ceratophyllum. An ecological risk assessment of heavy metals in sediments showed that Cd posed the highest ecological risk to the environment. A health risk assessment showed that consuming Bellamya sp. from the mixed area could cause a potential health risk.