Zeroshell is a router that runs on the very minimal CPU and memory configurations and leaves a very small footprint.
Comparing it with Zentyal for example, I could run Zeroshell on a single-core 2.2 GHz P4 Celeron with 512 MB SD-RAM, but Zentyal would not even load properly on a 3 GHz P4 with 2 GB DDR.
It is good for load-balancing and handles lots of connections year after year without reboot.
It lacks on the UI side in some areas and I could never get VPN to work as yet.
Zentyal comes pre-installed with the Jabber, Email, STUN, SAMBA, LDAP and several other servers that Zeroshell is lacking.
So if you are looking for something that can run on a very small or old machine, ZS is the way to go. If your configuraiton is modern and there is plenty of resources, than you can find a more feature reach solution.
Zentyal is different, it is more like for datacenter. We use it as a BGP router in our server room.
Zeroshell is good for NAT gateway at home or small office.
Zeroshell is excellent if you quickly need to connect 2 office networks with VPN-either routed or bridged. I just quickly extended office network to one event location at restaurant. For that I used 2 laptops running Zeroshell (and USB NIC-s for second interface).