Whether to use (ba)sh or (t)csh is a religious debate. Comparable to the emacs versus vi(m) debate. It is actually interesting to read various "position papers" on the web that argue in favor of one or the other shell, as long as you understand that many of the "facts" presented are really religious proselytizing.
Another thing: When writing shell scripts that are intended to be executed as if they were programs (stored, installed, used over and over), one really has two choices. Either say that one is always going to use one particular shell (say bash or tcsh), or try to make them portable. If one makes them portable, I think the best baseline is V7 shell. That's ancient, but all modern shells support that subset correctly. A good book about old shells would be a good primer.