It's Z best shell. Period.
Having originally come from Linux, I was pretty comfortable with
using bash as a shell. After a while, I began to tinker
with it, and wanted more completions and stuff. Someone on IRC talked
me into using zsh, and I've never looked back. It
has the best command line completion system I have ever seen.
I have written a decent zshrc with all kinds of different
completions setup, such as scp, sysctl and more.
There is also a fancy looking colour prompt and a bunch of other features
that I now take for granted and can't remember. I also have it setup to have
per-host and per-OS configs, allowing the shell
to adapt to the environment it finds itself in.
I find this extremely useful, as it saves maintaining
separate directories on each computer.
It is a literal cut-and-paste of my personal config, so you will want to go over
it quickly to make sure that things behave as you expect. I cannot take credit for
the entire config, or even half of it. Much of it is based on ZFC,
written by Jeremy Tregunna. Other credits can be found at the top of the config files.