Your levels are too different for that team to be good. To quote eevee-master, you only need one Flyer. Since this generation added a lot better Flying-type moves, you might use them. As for Charizard, take advantage of the Flying STAB. I would suggest something like Wing Attack. Having three Fire moves is two things that you don't want, expected and redundant. Especially because your Charizard doesn't use its type advantage as well as it could.
I take it your Dugtrio is your HM slave. Snorlax seems a bit like one too, with that moveset. You might try Hyper Beam on Snorlax. As for the birds, again you only need one Flyer. (Heck, even Charizard could be your Flyer, but I wouldn't suggest it.) Spread those moves around. The best one that I can see is Articuno. Moltres has a similar problem to Charizard, but with Endure it's an interesting move to include. Zapdos probably doesn't need Thunder Wave
and Thunder. You might consider setting up a Poke with Rainy Day, so that's more effective, and a different Electric move for that second one.
I'm by no means the expert on this (especially here) and in the end it's up to you. However, I would suggest that you try not to have too many attacks of one type on each Pokemon. Even all of the birds have that problem. Each attack needs to have a reason other than being there for STAB purposes. However, a basic moveset should be figured like this.
- STAB move for type 1
- STAB move for type 2 / (in case of single-type) powerful move of type
- move to counter main weaknesses
- move to surprise opponents (a lot of options opened with this gen for Pokes learning moves outside of their type(s))
Hope this helps!
AEPMT
_________________It's great to complete a Pokedex! So I'll need some help...
If you want to get better at writing in general, please visit my site!
Writers' Challenge