El lago Eduardo es alimentado por los ríos Nyamugasani, Ishasha, Rutshuru, y Rwindi. La desembocadura natural se encuentra en su extremo norte, desde donde desciende el río Semliki en dirección al lago Alberto. Cuenta también con otra vía de desagüe por medio del canal Kazinga, que dirige parte de las aguas hacia el lago George (Lake George), en dirección noreste.
El lago está situado a una altitud de 920 m s. n. m., y tiene 77 km de anchura por 40 km de longitud en sus extremos, cubriendo una superficie total de 2325 km², siendo el 18.º más grande del continente.