Basically, tofu is pressed soy curds. I liked a wiki entry
here. It is a decent form of protein (about 40% calories from protein), is low in calories, and is a good source of calcium and iron. It is relatively flavorless, but readily absorbs flavor. For this reason it is extremely versatile. There common kinds are silken and regular (firm) each comes in differing firmnesses. I always get firm or extra firm.
Silken - Silken tofu comes in the 12 oz aseptic boxes. It is usually blended for sauces or smoothies. It can also be used in baking, my wife uses it in cookies. It is an excellent thickener and I sometimes use it in place of cream (although the taste is different). A box of silken tofu is about 200 calories, and is about 40% from fat.
Firm Tofu - This is the stuff that most people think of when you say 'tofu'. It comes in 12-16 oz packages and it comes soaked in water. You need to press the water out before you use it. I put it between two saucer plates, with a can of something on top, and leave it for 20 minutes (or in the fridge for up to several hours). It can also be frozen, which completely changes the texture. Tofu is fairly flavorless and readily absorbs moisture and flavor. I usually cook it separately and add it back at the end of cooking (ie stir fry). If you try to cook it in the presence of moisture, it will crumble.
There are tons of ways to prepare tofu. It took me some trial and error to discover what I like and how to make it. If you've never had it and want to try it, I would suggest first trying it prepared by a restaurant or someone who knows how.
Bake - Cube it and toss it with a marinade and bake it, turning every 15 minutes until it dries out a bit and firms up, about an hour.
Pan Fry - Shake it in cornstarch (or not) and pan fry it in a little oil This is my favorite way of cooking tofu, especially for saucy stir fries.
Deep Fry - This is what you frequently get at Thai Restaurants. It tastes sweet, puffs like a sponge and tastes good on its own, if not a bit oily. I don't deep fry, but I sometimes buy it at an asian grocery store.
Crumbled - You can roughly crumble tofu and pan fry it in a bit of oil, allowing it to brown and tossing it only occasionally. At the end, you can whisk spices in with some water, soy sauce or whatever, toss with the tofu and allow it to evaporate. I do this sometimes for tacos.
Frozen - Some people think it's meatier or crumble it in place of hamburger. I don't like it this way.
Here's a dozen or so tofu-related posts from my blog, if you're interested.