Check out this handy Arduino R3 pinout diagram and write up from Nick Gammon. He hits a lot of the important points here, and in addition he explains the limits of all the pins and interfaces in the rest of the post. It’s nice to have all this info collected into a single place.
Note that this board is NOT the same as the newly-released Leonardo board, which uses one chip for both the USB and Arduino firmware. The Leonardo looks similar, but in many cases pin functions are moved around.