As far as the games go FR/LG > R/S
Emerald was my middle ground.
I measure my experience with the games by the narratives and judge the overall narratives by the characterization and effectiveness of the antagonists. In my opinion, Giovanni is legitimately more threatening than Chuck or Maxie.
Honestly, in R/S/E, what was Teams Aqua and Magma's motivation for doing what they did? What did they have to gain by either flooding the world or making it a barren wasteland? Additionally, when they do put their plans into action, they seem surprised that what they did could mean the extinction of humans and Pokemon alike. Their plans have no rhyme or reason. It's glaringly obvious that Chuck and Maxie are idiots who clearly did not know what they were doing.
Comparatively, Giovanni is a Mob Boss. Team Rocket were collecting rare and valuable items to trade in the black market (Cubone skulls). It's implied that Giovanni controls Kanto and its people by controlling its socioeconomic condition (casino, corporation takeovers). Giovanni was cool and calculating; he knew what he was doing. His purpose was to carry on the family business and to continue the tradition of power and corruption left to him by his mother. He is legitimately more threatening because his crimes mirror what happens in the real criminal underworld.
I will admit, however, that Gen 3 in Hoenn has better graphical design and added another dimension in game mechanics (natures, abilities) but the overall plot and context of the events transpiring in Kanto wins it for me in the end.