Well first of all, if you're gonna be fighting Red, then I suggest you level up your Pokemon to at least level 80. As for which team is best for defeating Red, I could suggest any powerful ground type Pokemon, such as Donphan, and teach it Earthquake. Your ground type will deal with Pikachu, which is sadly, Red's highest level Pokemon. For his Charizard, bring a sturdy Pokemon like Rhydon or a durable electric type like Ampharos. Attacks like Rock Slide, Stone Edge and Power Gem will most likely dispose Charizard in one hit. If you choose Ampharos to be on your team then it can also deal with Blastoise and Lapras, and be sure to teach Ampharos Thunder Wave, since it will make fighting Red's team a lot easier. If you do not choose Ampharos then bring an Electabuzz instead, and have it use Light Screen to reduce damage from Blastoise and Lapras, and then unleash your strongest electric attack with Electabuzz against them. As for his Venasaur, any powerful fire, flying or psychic type will finish it off quickly. Arcanine and Magmar are good candidates for fire, Pidgeot and Skarmory are good flying types, and Alakazam or Espeon are the best psychic candidates against Red's Venasaur. For his Snorlax, which I personally think is the most annoying Pokemon on his team to take out, bring a fighting type Pokemon with very high attack, such as Machamp or Heracross, and use your strongest fighting type attacks against it, and you should be able to knock it down in two hits, or maybe one if you land a critical hit. As for the rest of your Pokemon's movepool, I'll let you decide on that. Be sure to bring plenty of Hyper/Max Potions, Full Restores, Full Heals and Revives, as this is the toughest trainer battle in the entire game.
This may help you ;)