Thief is a specialty card. It improves a lot with the number of players. That and opponent treasure-density are the big factors in deciding if you want a Thief. Almost never buy a Thief in a 2-player game, but there is potential in a 4-player game. (Though honestly, even then it's still rare to be useful.)
There are 2 major drawbacks and one minor drawback to thieving:
It can help your opponents by trashing copper.
The benefit to you is slow: you won't see stolen treasure until after a re-shuffle.
Cycling your opponents deck speeds up their shuffles, thus how soon they can use just-gained cards.*
Thief is a mid-game card, but due to the copper-trashing it's actually bad in the early-game. This is unusual, it's about the only card that can do nothing for you while helping your opponents. You must wait until other players have trashed most of their coppers to get a Thief. However, if you wait too long, your odds of hitting a treasure in a greened deck get slimmer (though stealing a Gold late in the game can make it hard for your opponent to get the last Provinces.) Furthermore, late in the game you might not get a chance to see any of the treasure you steal.
You don't want a Thief unless people have high treasure density: both trashed their copper already and started getting bigger Gold/Platinum. I don't really think it's worth it if Silver is the best you'll get. You also don't want a Thief if people are using action cards for money. Markets, Minions, Conspirator chains, etc. -- forget the Thief.
There's obvious synergy with cards that let you control the top of your opponents' decks (e.g. Spy/Scrying Pool). They can make a Thief much more effective. Additional treasures are also cards that could make you want a Thief. It's great to steal a Harem toward the end of the game, and Venture, Bank, etc. are nice additional targets.
We should compare Thief to Noble Brigand, which has been called in some forums a "fixed version of Thief". This isn't accurate; both cards were designed before the base set was released, they're similar but different, much like Laboratory and Hunting Party, or the different varieties of Village. Thief can steal/trash Platinum, Harem, Hoard, Fool's Gold, and all the other non-standard treasure, whereas Noble Brigand can only steal Silver/Gold. If someone is trashing coppers and buying Hoards, it might be time for a Thief. Mint/Fool's Gold is an excellent 5/2 opening, but a Thief could put a stopper on that. However, for general use Noble Brigand is better because it doesn't suffer from Thief's biggest drawback: trashing Coppers; it actually does the opposite, giving coppers if no treasure is revealed, which is nice for slowing engines. And it gives you $1. And it activates on purchase. (I do wish Thief had some of those buffs. Even with the $1 and the instant activation it would still seem underpowered.)
If I were to pick a set of Kingdom Cards to make Thief as good as possible, I would want it to be a long game, so the Thief has time to steal and see the rewards, so it would definitely have Platinum/Colony, and probably a Curser (maybe Sea Hag?) to keep things slow. There has to be a trasher or 2 to get rid of coppers, but nothing too effective--again, keeping things slow. Moneylender would encourage trashing of Copper while allowing players to skip Silver and go straight to Gold. Spy is also a good enabler. But we also want to be stealing interesting treasures! Thrown in some of the nice Kingdom treasures like Venture, Bank, Harem, and things start to look good. Maybe throw in Silk Road to make the Harems extra tempting.
*@Neal pointed out that it goes through opponent's decks, and thus they might miss a card they wanted. Going through someone's deck is usually seen as a con, because for most of the game they're buying cards that make their deck better, so reshuffling sooner gets those new cards in their hand sooner. I would consider this a con for Thief.