What is the difference between Unix shells?

This is a religious debate, with no clear and definitive answer. The things that you need to know are simple: you MUST know /bin/sh, because in the worst of all worlds, that’s the only one ALWAYS installed on the system. As a result all system scripts are written to that.

I find Emacs-style command line editing extremely helpful, as well as job control. All of the other differences are noise, IMHO.