I have beaten Pokémon Fire Red/Leaf Green with all three starters, and I am ready to say who the hardest one is.
With Bulbasaur I rank their difficulty from easiest to hardest as
8. Brock (Rock/Ground)
7. Giovanni (Ground, all with either a rock or poison type too).
6. Misty (Water, half are also psychic)
5. Lt. Surge (electric)
4. Erika (grass, two thirds are also poison).
3. Koga (poison)
2. Sabrina (Psychic)
1. Blaine (Fire)
I kept hearing that even Blaine would be easy thanks to surf but that is false. His first three pokemon are really easy, but his Arcanine can tank it and with his great speed and his move extreme speed, he can and did sweep my team. His early pokemon can also burn my water pokemon giving him a great chance. He is the only gym leader to defeat Bulbasaur or its line. Sabrina came close. Koga could challenge it with his Muk, but the Leech Seed move beat it. No one else was hard, as he has a type advantage against everyone else but Erika (still superior to her pokemon) and some of Giovanni’s pokemon whom surf does destroy, and Venusaur should easily knock out 3 pokemon with just a Razor Leaf move.
1. Lt. Surge
Like Bulbasaur, Squirtle easily crushes Brock. Blaine goes from hardest to one of the easiest. Giovanni is even easier with Squirtle than Bulbasaur. Despite the type disadvantage a flying pokemon can easily crush Erika. Her moves and pokemon stats are just bad. Koga was a challenge where I nearly lost, partly because I made some bad mistakes. Sabrina came exactly as close to beating me as she did with Bulbasaur. I lost to both Misty and Lt. Surge and I heavily debated who should be the toughest. I accidently refused the dark move, Bite, so Misty only got second place, but her Starmie quickly crushed my whole team the first time. Second time Butterfree was the MVP, and he poisoned Starmie giving me a close victory by only one turn. thankfully it did not use recover. I heard a ground type like Geodude would crush Lt. Surge. That was completely false. Voltorb’s Sonic Boom move greatly hurt it. Also between its bad accuracy and Raichu’s Double Team move Geodude was worthless and I lost. A grass pokemon is better, as they have better accuracy. Defeating either of hose two with Squirtle/Wartortle was harder than defeating Blaine with Venusaur.
As any player probably knows Charmander as a starter is hard mode. He is not picked for his power, but for his challenge and cuteness. To add to his type disadvantages against all but one gym he does not learn a great move all the way until level 34 (Flamethrower). In contrast Squirtle gets Water Pulse after defeating Misty, and Bulbasaur gets Leech Seed at level 7. His only bright side is all of his weaknesses are covered by grass meaning an Oddish or Bellsprout is a must.
2. Lt. Surge
This list is practically the opposite of what I thought it would be besides Misty being the hardest. Giovanni sounds hard, but by this time the player should have a team of other pokemon to beat him, and a level 44 charmander one or two hit beats all of his pokemon ad out speeds all of them. As a charizard it now knows Fly and flamethrower giving him a same attack type bones on a physical move and a special move. Use fly on Sabrina (bad physical defense) and flamethrower on Giovanni (bad special defense). It also has great speed to go first. Due to that only Blaine’s Arcanine could really fight it well of the late gym leaders. Before it got there everyone was hard but Brock. Brock’s pokemon also have garbage special defense and the fire move Ember, whipped out everything but Onix. Onix is slow, has bad HP, has bad special defense, is capable of being burned, and it Charmander should have Metal Claw by then which greatly hurts it. To make it worse, its rock move, Rock Tomb, is innacurate. Besides them the early gym leaders are really hard. I thought Charmander would wipe out Erika with his type advantage, but I did not have flamethrower then, and her pokemon wore Charmeleon down and defeated him. I also waited to battle her to get Starmie and Snorlax Instead of going straight for her like I did with Wartortle and Venusaur. Snorlax and Starmie had to do most of the work. Lt. Surge was hard de to his power until Weepinbell finished it in a battle where Charmeleon was useless. Misty with a Charmander as a starter is by far the hardest gym battle in the game. I could not stall with poison powder as Starmie out sped and wiped out Charmeleon, and my other pokemon. It can take attacks from Pikachu and crush it too. It is the only gym I had to grind for and look for another pokemon, Bellsprout to win. Now to average the placements to find the hardest gym leader.
With an average of 7.666 placement Brock is the easiest gym leader. His pokemon have awful HP, speed, and special defense. On the bright side I heard he is really hard in Pokémon Yellow.
With an average of 7 Giovanni is not much better. All three times he is easy to beat. He has all the same weaknesses as Brock, but he has one thing going for him, his gym lieutenants are great. They have a great variety of pokemon making Giovanni seem even more disappointing.
With 4.666 Blaine is way better. He can beat Venusaur, but as a late game gym like Giovanni the team should be prepared for fire. At least his Arcanine is probably the second hardest gym pokemon to beat, but his others are not worthy to be on the same team.
Erika is slightly better at 4. This seems odd, as she was easier to beat than Blaine in many cases, but the best counter I could find was Snorlax who cannot win quickly. If only she spammed Leech Seed she could have been number one.
Koga’s average is 3.666. Unlike most gym leaders, he uses his most powerful pokemon, Muk, early. He also does not hesitate to heal it with his potions instead of weaker pokemon. While he is vulnerable to ground his Koffing and Wheezing are immune to it really helping his type diversity.
At third place is Sabrina with 3.333 average. I heard she would be number one with her great special attack, speed, and decent special defense. The problem is her pokemon have horrible physical defense making them very vulnerable to quick attack. Also her best pokemon alakazam is too fragile to carry the team unlike Arcanine and Starmie. She also tends to use status boosting moves too much, which allowed my Victrebell to beat both her Alakazam and Mr. Mime, over half of her firepower right there.
At second place Misty got 3 as an average. Despite only coming in second I think she is the hardest due to the difficulty as beating her with Charmander line is unrivaled by anyone else in this game. While unable to beat Bulbasaur line without a psychic move she can beat the Squirtle line well and the Charmander line is completely helpless. She also does not waste moves on stat boosting moves when at a type disadvantage like other gym leaders. Her constant water pulse attacks makes her very hard to beat.
Lt. Surge has a 2.666 average. He has great speed, success with double team and paralysis to make his toughest pokemon hard to hit, and Voltorb. Voltorb’s move, Sonic Boom does 20 damage meaning it can weaken the main pokemon designed to beat it even at a disadvantage. Also ground is his main weakness, but due to most poison types (the Koffing line) being immune to ground there is hardly any additional use for ground. Rock has use, but it is really inaccurate. I do not remember him being tougher than Misty, yet he edged her out by one point, and I cannot remember how my Venusaur beat him so well. I guess his high stats let him crush Riachu. Squirtle got crushed, and Charmeleon could not take same attack type bonus electric moves. He is much to my surprise the hardest gym leader.