Le principal affluent du lac est la Broye, et il s'écoule dans le lac de Neuchâtel par le canal de la Broye. Il sert, avec le lac de Neuchâtel, de bassin de compensation pour les eaux de l'Aar s'écoulant dans le lac de Bienne. Si le niveau de ce dernier monte trop, l'écoulement s'arrête ou même va dans le sens inverse.
Le lac est long de 9,9 km et a une largeur maximale de 2,8 km, avec une profondeur maximale de 45 m. C'est un des rares lacs où l'on trouve encore le silure, un poisson carnivore qui mesure de 1,5m à 4m de long pour un poids maximal de 300 kg, et qui constitue le plus gros poisson d'Europe.
Côté Jura, le lac est séparé de celui de Neuchâtel par le pittoresque Mont Vully, donc le flanc sud est couvert de vignobles produisant des vins méconnus mais qui n'ont rien à envier à ceux des autres régions de Suisse.
(partiellement adapté de Wikipedia)