linux-smp - If I had to guess, this would be to start Linux with multiprocessor support compiled into the kernel. SMP (Symmetric MultiProcessing
http://www.webopedia.com/TERM/S/SMP.html) adds a bit of size to the kernel, making it boot a little slower. This slight boot time slowdown is well worth it if you do actually have multiple processors (or a HyperThreading P4), but if you have a single processor it's a waste of time. Realistically, however, there isn't much of a difference.
linux - basic kernel. This would be the best one to use, although if you've been use linux-smp because it was the top one then that's cool too.
linux-nofb - Same as the one above, but without framebuffer support. Framebuffer is the cool technology that allows you to have your really fancy, high-resolution command line. However, framebuffer isn't perfect on some video cards. You would use this if you were having video issues (kinda like a safe mode).
263-7 - no clue - sorry!
failsafe - better "safe mode" than the linux-nofb