I always have to have Flying, Water, and usually Electric. In my Pearl playthrough, I didn't have an Electric-type, but I had a Clefable with Thunderbolt, and I also had a Grass-type (Roserade).
I usually use water, ground, flying, and ice. I rarely use bug, ghost, psychic, dark, fighting, normal, and NEVER grass types. I don't like grass types...
Not really, in the past games I pretty much only trained my starter, whatever type it was. In black I trained 3, and they were random types based on what I could get my hands on early on.
My must use types in game:
water,fire,grass,fighting,flying,dragon.
Types that Id like:
Dragon,Ghost,Psychic,Ice,flying,Rock,Ground.
Types that I like:
Fire,Water,Grass,Poison,Dark,Fighting,Normal,Bug.
Type that I like the most:
Normallllll!
I try and cover as many of my weaknesses as a can. So besides Ground (which is the only type good against Electric) and Fighting (the only type good against Normal), I never always use a particular type. I generally don't use Bug types (because there are few good ones), Steel types (unless it's a secondary type), and I never use Poison types (because it's only type advantage is Grass, and there are much better types to counter it) or Normal types (because they have no type advantages).
I usually just go with whatever I can find. In the games where I need to use water HMs like Surf and Waterfall, however, I try to use more than one water-type to spread out the HMs.
I always like to have a Fire/Water/Grass/Electric type. I also like to keep a Steel type if one is available. At least one Pokémon in the team has to be able to learn Surf, and one should Fly too!
I don't really focus too much on coverage, I always end up like this:
Fire
Water
Grass
Flying
Fighting (If my Fire type isn't fighting, like in HGSS or FRLG)
any random type I can find, like Dark, Rock, Ghost, Psychic, etc.