I have to agree with @bobbyiliev. As his, my personal choice pretty much always falls to bash . Most of all, it’s easy to use and intuitive.
With that being said, I feel like a worthy mentioned would be zsh. Zsh is an extended Bourne shell with many improvements, including some features of Bash, ksh, and tcsh.
Let me give you some examples. You don’t have to type whole directory names when using ls, just type the first few letters enough to make it unique and Zsh will work the rest out.
Will actually display the contents of /usr/lib.
Another great example is the kill command completion.I usually kill commands after inspecting them using ps or if I’m confident with pkill, Zsh gives you another option.
Press TAB and it will give you all the current processes that start with the letter s. You can then choose which to kill.
Having said that, I do feel that for beginners the default bash shell is best. However if you feel like diving in deeper, zsh is the way to go for me.