Fighting-type Pokemon in Generation II are largely defined by their high attack and defense stats.
With only three new Fighting-types added, Johto's Fighting diversity is nearly nonexistent. Still, even within such a slim variety, there are better Pokemon and worse Pokemon.
Note: This article is subjective and reflects the opinion of the writer.
Top 5 Fighting Pokemon from Johto
#5 - Poliwrath
Poliwrath is a jack of all trades, with close to even stats across the board. Its biggest use as a member of a team in GSC is type coverage or physical damage.
Unfortunately, Poliwrath doesn't learn any overly useful Fighting-type moves. However, the Pokemon can learn Belly Drum, which lets it make up for a lack of STAB (Same Type Attack Bonus) by immediately maxing its attack. It also isn't too difficult to obtain since it just requires a common Poliwhirl and a Water Stone.
#4 - Hitmonlee
The faceless Fighting-type Pokemon Hitmonlee is a surprisingly bulky pick. It is used to stall special attackers by using its more-than-modest attack stat to beat the opponent into submission.
Using Rest and Sleep Talk in conjunction with one another is a popular strategy in Generation II, and Hitmonlee is an excellent example of a Pokemon that can do it. Using Rest and then spamming High Jump Kick or Body Slam through Sleep Talk makes Hitmonlee a nigh-unbeatable deliverer of pain.
#3 - Primeape
Primeape manages to pull ahead in Generation II by being the fastest Fighting-type Pokemon in the game. It also has a decent move pool, learning moves like Cross Chop, Rock Slide, and Thrash.
However, even as the fastest Fighting-type, Primeape is still not as fast as a sizable amount of other Pokemon in the region.
Primeape works best when used in a team capable of paralyzing the opponent since the speedy ape Pokemon will basically be guaranteed to go first no matter the opponent in that scenario.
#2 - Machamp
Machamp is called the Superpower Pokemon for good reason. A devastating base attack stat of 130 means that anything hit by one of Machamp's four arms will be seeing stars for days. A mixture of Cross Chop and Rock Slide will decimate most opponents, while other moves like Earthquake or Body Same can be used for more precise scenarios.
The biggest caveat to using a Machamp is that it is much more difficult to obtain than other Pokemon. It requires trading a Machoke with another player and then trading it back. For some, this may be as easy as booting up a second copy of the game or traveling to a neighbor's house. However, for others, this is a near-impossible task.
#1 - Heracross
Heracross is a fine example of a devastatingly powerful Pokemon. It has nearly as much base attack as Machamp, but with better type coverage and significantly better speed.
Bug and Fighting-type is certainly an interesting typing. Bug covers Fighting's weakness to Psychic with moves like Megahorn, while Fighting takes care of the Rock-types that Bug-types hate so much.
The dual-typing does sport a 4x weakness to Flying-types, but the ability to counter both the prevalent Rock-types and dangerous Psychic-types makes the quad-weakness worth it.
Heracross can easily be obtained through casual gameplay. It may take a bit of luck, but as long as the player continues headbutting trees, they are sure to find the behemoth bug.