My play style varies a bit by game, but I usually catch every Pokémon available and train them all as I go along. I don't tend to have a set team anymore; rather, I have a larger group of Pokémon that I rotate through. This allows me to keep Exp Share on (so that I don't feel like I'm wasting time that I would eventually need to train everything in the postgame) while preventing my team from becoming too overleveled. It does mean that I'm less attached to my starter than I used to be, though. I used to keep my starter in my party at all times, but if I use Exp Share, I keep having to box it, which I dislike.
Looking back at the various play styles I've used:
1. Blast through the main game with my starter. Catch a couple of Pokémon, but stick mostly to a solo run. Games: Red, Gold pre-E4
2. Build a team and use that. Catch a few other Pokémon, but don't focus on them until post-game. Blast through the story. Games: Gold post-E4, Silver, and to a degree, Yellow.
3. Catch everything available and train them all perfectly evenly. Prevent myself from progressing with the game until I hit arbitrary level cutoffs. The disadvantage to this is that I tend to take too long and never get through the story, or don't get through it for years. Games: Crystal, LeafGreen.
4. Train a team, or a group of more than six Pokémon, catch everything else, but don't necessarily have them all be at the same level. Gate progress somewhat to slow down gym progression and prolong the game (and because this is the style I use for the newer games, and I play them to help me fall asleep, so progress is often slow). Games: Pretty much everything from gen 3 (non-LG) to the present. This is my standard play style today.
My progress gating does vary a bit. I feel let down when I beat the game, so I tend to prevent myself from challenging gyms too often, and instead focus on breeding, training, etc. If I beat the E4 within a year of release, that's unusual, unless breeding options really are locked down until post game. I find that I often get 7 badges or so, then stall in finishing the game for months. (I stuck all of my games on Backloggery a couple of years ago, and apparently I have a habit of putting games down or stalling right before the final dungeon/boss across the board, not just for Pokémon.) That said, I seem to enjoy the games that I finish somewhat more quickly more than the others, so I wonder if I should change my approach a bit for gen 8.