Shells are like excuses, everyone has one and they all stink. If you find yourself getting into an argument over which is the best shell, you have crossed the line from normalcy to computer nerd and are probably also having inexeplicable cravings for Skittles and Dr Pepper. I of course think tcsh is best and that ksh should be banished.

The shell is what lets you talk to the kernel. Really it does. You can think of it as your command line. It is more or less the set of commands at your disposal. There are many different types such as ksh (korne shell), sh (bourne shell), csh (c-shell), and tcsh (t-shell). Most people at CERI have either csh or tcsh and if you have something different then you either know enough about it not to be reading this, or someone else gave you something different and you should direct questions to them.

Each shell more or less performs the same functions but is just different enough to place your keyboard, monitor, and nearest window in grave danger. Unless you're a masochist, stick to the one you have.

t and c shell are similar enough so that all this applies to both. Some nice things to know are:
history (give a numbered history of commands performed)
!! (perform the previous command)
!n (perform the nth command in the history)
!-n (perform the nth previous command)
!$ (perform command on the same argument as the previous command.)

There are many other things about csh that are contained in the man page. Also be aware the dot files, redirects, syntax, and all manner of things are shell dependent--yet another reason to get used to one and stick with it.