Wigglytuff is extremely versatile and can be a delight to use. It should be noted, however, that despite the extremely high HP, it really doesn't take hits well due to really low defenses. Clefable is generally a better Pokémon, because he has better stats all around (better defenses, Special Attack, and Speed in trade for worse HP) and is even more versatile with Encore, Meteor Mash, Belly Drum and a few other moves.
That doesn't take away that Wigglytuff has some potential though. A correctly predicted Counter means the demise of anything physical that hits it. Its big movepool means it can hurt a lot of things by surprise as well. What lets this balloon down is the really low defenses and being overshadowed by Clefable.
Physical Wigglytuff's main drawback is that Kangaskhan outclasses it in every way.
Wigglytuff's movepool, like most Normals, is awesome. Its attacking stats aren't that great, but the 120 base power of Double-Edge plus STAB is nothing to laugh at, but Seismic Toss lets you invest entirely defensively. Wish helps to heal the rest of the team and Counter can OHKO many things with Wigglytuff's huge HP. Protect lets you heal with Wish easier, while Light Screen makes the enemy more likely to attack you physically to allow Counter to work, and boosts that abysmal Special Defense.
When it comes to Counter, you'll definitely want to have a lot of Defense, so use the EVs suggested. Wigglytuff will not live through anything physically if you don't stack his defenses. Wigglytuff will survive a Choice Band Adamant Heracross Megahorn and counter it back for the KO with the suggested EVs if you happen to use it in OU.
Special Attacking Wigglytuff. Nothing resists Thunderbolt / Ice Beam except Magneton, Lanturn and Shedinja, though in standard you will not be doing any damage at all to the standard Special sponges Snorlax, Blissey and Regice. Spikes are almost a requirement to compound the damage as people switch out in fear of leaving their Pokémon in with -2 Special Defense.
For UU play, Toxic is a good idea because it totally messes up Hypno (who cannot Rest, just Wish) and Grumpig (as long as it doesn't put up a Substitute in time), but Fake Tears is still good.
Sing can put a Wigglytuff counter to sleep. Charm can help out a lot by softening the blow from a Choice Bander and other hard physical hitters (though it's totally useless versus Pinsir and Gligar) on the switch. Tickle does this to a lesser extent, but also softens up Pokémon for the rest of your team, it can work nicely with Dugtrio or Trapinch, who will be able to survive and kill more. Reflect works the same way and supports the team, and so does Light Screen. Wigglytuff is slightly better off with Light Screen because it has no Special weaknesses, enabling it to tank against Special attackers. Psych Up can be fun to copy stat boosts, but in general Wigglytuff will lose one on one with these guys, whether it's Ninjask Baton Passing to a physical sweeper, Salamence using Dragon Dance, Grumpig, Raikou or Suicune using Calm Mind or Snorlax using Curse. Same goes to Snatch, except it's more relying on prediction and you steal the stat boosts instead of copying them.
Fire Blast and Flamethrower mess up Heracross and Metagross in standard, as well as Skarmory if you didn't cover him with Thunderbolt. Or you could use Thunder if you're a gambler, it does less damage than Thunderbolt in the long run but the high power and 30% Paralysis chance can save you in a pinch.
Body Slam is a good alternative STAB option for Double-Edge. Body Slam in general is a great move as it can Paralyze opponents while still doing damage, Return can be seen as a somewhat inferior move to Double-Edge as Wigglytuff's HP is so amazing it will not really feel the recoil.
Shadow Ball can hit Ghosts, mostly useful for Gengar, or a Banette switch-in in UU, or the rare Shedinja. Dusclops won't be feeling it, and usually Misdreavus won't either. Wigglytuff can make an okay Sleep Talker, it has many different attacking moves at its disposal, but the lack of firepower hurts it.
Since this thing's HP is so high, you take much less damage from opponents by boosting its defenses. In general, you want to only put EVs into HP if you've already maxed out one of your defenses. The exception, however, can be Counter. You'll want enough Defense to survive the hit, but not so much so that they survive the Counter. If you plan on hurting things, put EVs into the attacking stat you're using.
Checks and Counters
Hit Wigglytuff with a decently powered attack and it will usually be losing 60% of its HP. The defenses get that low. However, when attacking Wigglytuff, you do not want to do it with a Pokémon that hates being Paralyzed because it's known to use Thunder Wave. Don't use a physical attacker either until you know it's not going to Counter you. You'll also find Wigglytuff hates being Toxiced.
What you can safely switch in depends entirely on the set. Wigglytuff's attacking stats aren't the best in the world, so the risk isn't too big. Snorlax, Tyranitar, Blissey and Regice are all safe against a Wigglytuff that doesn't carry Focus Punch (or Brick Break, but that's an inferior move). Snorlax and Tyranitar can hit it hard physically or set-up against him, Blissey can Paralyze it or Seismic Toss it to death, however if Wigglytuff carries Wish that will result into a stall war. Blissey will win it in the end but it will take a long time. Regice should usually 3HKO Wigglytuff with Ice Beam assuming it has about 250 Special Attack and Wigglytuff doesn't have a lot of Special Defense EVs.
Zapdos makes a splendid counter too, its Thunderbolts really hurt and it doesn't really take enough damage from Wigglytuff's non-STAB Ice Beam to be afraid. Thunder Wave can be a bit annoying if you're not running Rest on Zapdos, though. Same goes for Raikou, except it's not even afraid of Ice Beam and can Calm Mind / Substitute up easily. Swampert is not taking much damage at all from anything besides Wigglytuff Countering its Earthquake, but it can just Curse up anyway.
Dugtrio is going to ruin your fun when it's there. Even with max Defense, max HP and Bold it will do around 50% damage, so if you don't have Counter you're toast. Ice Beam usually will not OHKO Dugtrio. However, it's not going to switch in when Wigglytuff is attacking—switch Dugtrio in on a supporting move like Thunder Wave or Light Screen, and not on Reflect.
Metagross, barring Fire moves, is going to have an easy time coming in on about everything, taking very little damage and dealing a load of it back with Meteor Mash. Same goes for Heracross and other Fighters like Machamp and Hariyama, and to a lesser extent Blaziken, Breloom and Medicham, because the last three have more trouble coming in on direct attacks and Paralysis, while the former three have enough durability and the Guts trait, so they don't need to worry about that. Beware of Counter, though it's highly unlikely Wigglytuff lives through STAB Choice Banded Fighting moves. Rhydon has trouble coming in on Ice Beam but does a load of damage.
In UU, counters are harder to find but still existent. Quagsire and Whiscash do the same Swampert do, but Whiscash cannot Curse so he may find it tougher to get past Counter Wigglytuff. Fearow, Nidoking, Aggron, Golem, Solrock and other heavy physical hitters can hit Wigglytuff really, really hard but Fearow, Golem and Nidoking don't like Ice Beam and Fearow hates Thunder Wave as well. Beware of Counter too. Electabuzz or Magmar with Cross Chop do not like Thunder Wave or Counter either but they do rough up Wigglytuff.
Hypno walls Wigglytuff in a similar way Blissey does in standard, but should watch out for Toxic. Grumpig can Substitute and then Calm Mind up against Special attacking sets, but with a STAB move, Shadow Ball or Seismic Toss the Substitute can be broken easily. Thunder Waving or Toxicing Grumpig on the switch can be pretty annoying too.