Zala springer ut fra det skogkledde høylandet i grenseregionen mellom Ungarn og Slovenia, en kilometer øst for den slovenske grensen. Dette kuperte landskapet danner vannskillet mellom Zala og nedslagsfeltet til Rába, som renner nordover. Etter omtrent 25 kilometer østover forlater elven fylket Vas nær Felsőjánosfa og flyter derfra gjennom Zala fylke. Fra fylkessetet Zalaegerszeg strømmer elven i en nordøstlig retning. Nord for Zalaszentgrót svinger elven i en stor bue mot sør og følger terrenget i Zala-åsene mot sør. Etter omtrent 50 kilometer nås sumpområdet Kis-Balaton nær Zalavár, og elva drenerer mot nordøst gjennom engene og sumplandskapet inn i den vestlige bredden av Balatonsjøen ved Keszthely. Her danner elva et kort stykke grensen til fylket Somogy.