When I first played a Black ROM, I quit somewhere along Route 7; I never saw Twist Mountain. In that run, I had trouble in the fourth (Electric) Gym, but using save states and experimenting figured out that the leader's Emolgas were being EXTREMELY smart and intentionally using the move that is strongest on the Pokémon you have out. I developed a strategy for switching the Pokémon over and over (so that the move intended for a Pokémon weak to the move instead hit one resistant to that move) until each ran out of moves, and then wiped out the final Pokémon easily and moved on. I learned to come properly leveled to this fight, and did it extremely easily on my proper game run on the actual system. I now come to every Gym battle trying to have the main participants at or above the Gym leader's highest leveled Pokémon.
As for challenge, I found that grinding on Audinos made the game EASIER. You can hand an Exp. Share to someone who isn't strong against them and take one of the many Fighting types to go to town on them, leveling up both very quickly in the process. I learned not to put Fighting or Poison against Audinos, and the rest was elementary. I'm still grinding on Route 10 as I type (Lv.33-36 Audinos and the occasional Stoutland, I run from Emolgas to avoid the Static).