Houdini 4 is the top
chess engine on the market. It plays at an estimated strength of, I believe, around 3200 ELO (where the strongest human is under 2900). Older versions of Houdini (maybe closer to 3100 strength, still way better than any human) are available for free. Note that there aren't anywhere near enough games between humans and modern engines at meaningful time controls to allow accurate comparison, so the estimated playing strengths (relative to humans) of Houdini and other engines (Rybka, Fritz, etcetera) are just that: very rough estimates.
An "engine" is a program that analyzes chess positions. It is useless on its own; in order to use it you also need some sort of interface (ChessBase is excellent if you're interested in paying for the best; a free option is Arena). Any major chess engine should work with any major interface, and different interfaces will offer different options of exactly how you can use the engine. The most common uses, though, are:
1) To play games (or specific positions) against the engine. This can be a great way to train techniques, like by setting up a theoretically won position and trying not to let the computer get out of it. Trying to learn how to mate with K+Q vs. N? Set it up, and you've got an opponent who is literally stronger than any human in the world to practice against. Mate the computer, and you can mate anyone (from that position). Most interfaces also have ways to handicap the engines to force them to play below their maximum strength, allowing competitive normal games, but my opinion is that you'll generally learn more from playing humans around your strength (or a little better), than by playing handicapped engines at that same strength.
2) Analyzing your own games. The engine can offer a numerical evaluation of any position. Running your moves through an engine analysis, and watching for spots where the evaluation shifts drastically, can allow you to find errors in your (and your opponent's) play. This is also known as "blunder checking" your games. It's what chess.com does when you request computer analysis, except they use a very low quality engine, that gives poor and often useless advice.
3) Having the engine play against itself, or against other engines. There's no real point to this, but some people (mayhaps including yours truly) enjoy it