The first question in response would be: What type of encoders do you mean? There are lots of different types with different usages. For now, I guess I'll assume you mean
rotary encoders, which are probably the most common type in FRC robots.
Now, an optical rotary encoder has three main parts: a rotating disc, light source, and photosensor (which senses the light source). It looks something like this:

The encoder will have two of the light sensors offset at 90 degree angles to each other. They will output two square waves offset by 90 degrees:

You can use these two waves to determine the speed and direction of the rotating shaft.
That's a very simplified overview of encoders - there's undoubtedly someone who can go into more detail than I can. For more reading:
http://zone.ni.com/devzone/cda/tut/p/id/3321
http://www.societyofrobots.com/sensors_encoder.shtml
http://en.wikipedia.org/wiki/Rotary_encoder
As to which encoders are the best to use, it really depends on the application. Most drivetrains use
these encoders (they work, and they come in the KOP). Once you move into other robot attributes, there's much more variety and diversity of sensor choices.
Potentiometers and
Magnetic Rotary Encoders are also popular.