Red is obviously the good guy because he has all the Pok"mon and he dosent want ANYONE hurting any POKEMON Giovanni is catching Pok"mon and SELLING the Pok"mon for money. He just wants Mewtwo for money he also was the one who gave the order to create Mewtwo and he created it with him not knowing if he wants to be made.
Red may have caught all of the " Pok"mon" as you put it to save them from any harm that could take place, but if you look at the actions of Giovanni he made the ultimate weapon and was proud of his work until one day it broke free, thats when he realized that he was no longer a fun loving Pokemon trainer (heck he was even a gym leader) anymore he was essentially Dr.Frankenstein. Giovanni wanted to do one last thing to save the world from the wrath that Mewtwo had the potential to start, to do this he needed help so he started team rocket to get a cover. Giovanni knew that Mewtwo was a psychic type and what are the weak against? ghost type so he used team rocket to steal the silph scope which can see ghosts that he needed to take down Mewtwo but during the process he was thwarted by a kid named Red and could not get the silph scope just making his plans even harder. Now Giovanni knew that he couldn't catch Mewtwo with just any ordinary pokeball and with the loss of the silph scope he needed something good, thats when he came up with the idea of the master ball. The master ball would catch any Pokemon without fail making it a 100& guarantee when he went face to face with Mewtwo he wouldnt let him go, but that's when Red came in was ultimately stopped Giovanni and team rocket from getting the pokeball. I'm sorry for the long time to post this but I look forward to your rebuttal.
Giovanni was trying to make a pokeball that will capture any Pok"mon which is called the Master Ball. But in his process he was hurting Pok"mon when he was doing it. Red might be stopping Giovanni he also helped Pok"mon. Red also helped Giovanni by beating him in a battle Giovanni dismantled team rocket after the battle. That is why I believe Giovanni was the bad guy
I believe that Giovanni only dismantled Team Rocket after fighting Red, because he saw the potential Red had to go face to face with Mewtwo to do something that Giovanni knew was impossible for himself. Giovanni was obsessed with trying to fix his mistake in making Mewtwo that he with held his on Pokemon until it was time for them to do his dirty business and maybe he even saw a potential in himself to protect the Pokemon world from people like himself that would harm people and pokemon.