I recommend using these types of pokemon.
Water,Ice
Electric
Psyhcic
Dragon,Flying
Fighting
Rock,Ground
Each type of the pokemon I listed should be able 2 learn strong attacks and good defensive moves. The Grass,Poison,Dark,Bug,Fire, types are okay but have major weaknesses (except Dark Type they just learn very weak moves.)
Heres the list of my pokemon #1 team list.
Water,Ice- Walrein or Lapras
Psyhcic- Gardevoir or Metagross
Dragon,Flying- Rayquaza or Dragonite
Fighting or Normal- Hitmonchan,Slaking,Exploud or Machamp
Rock,Ground or Steel- Golem,Steelix,Aggron or Tyranitar(Dark,Rock Type)
Electric- Manectric,Jolteon,
The legendary pokemon are strong but they learn moves every blue moon and their abilities are always Pressure which raises your foe's PP usage, that's a weak ability if u ask me.Their stats are amazing though ,The only legendary I recommend in your team is Rayquaza cause he can learn almost every move available except Attract cause he aint a boy or girl.