Assens er en ret søfattig kommune, og selv om antallet af søer når op på næsten 2.000, ligger det samlede søareal på blot 487 ha eller lige knap 1 % af kommunens areal. Næsten alle er småsøer og vandhuller samt en del gamle mølledamme, og trods sine blot 26 ha er Søholm Sø ved Glamsbjerg kommunens største sø.
Omkring 80 % af kommunen afvandes til Lillebælt, mens de resterende 20 % afvandes til Odense Fjord i nordøst. Kommunen har ca. 275 km offentlige vandløb, hvoraf ca. 40 km er rørlagte. Dertil kommer et betydeligt større, men ukendt, antal kilometer private vandløb. Som søerne er vandløbene generelt små. Blandt de største er Brændeå, der forlader kommunen ved Håre Bjerge for at løbe ud gennem Bredningen til Lillebælt i Middelfart Kommune. Også Haarby Å hører til de lidt større vandløb. En strækning på 1,2 km af åen er blevet genslynget, og i 2014 blev der etableret et nyt våd område nord for Haarby for bl.a. at mindske kvælstofudledningen til Helnæ s Bugt og forebygge oversvømmelse af byens kældre.