After you defeat the Elite Four for the first time, they will become available for rematches. Each time you defeat them, you will earn a significant amount of experience points for your team. The Elite Four are located at the Indigo Plateau.
The Hidden Grotto is located on Route 17 and is a great place to train Pokemon. Wild Pokemon in the Hidden Grotto are much stronger than those found elsewhere in the game, and defeating them will earn you more experience points.
Many trainers in the Johto region can be rematched after you have defeated them once. This is a great way to earn experience points and money, and it also allows you to test your Pokemon's strength.
The Vs. Seeker is a useful item that allows you to rematch trainers you have already defeated. You can find the Vs. Seeker by talking to the old man in the house to the left of the Pokemon Center in Goldenrod City.
The Lucky Egg is an item that doubles the experience points earned by the Pokemon holding it. You can find the Lucky Egg by talking to the woman behind the counter in the Pokemon Center in Vermillion City.
The Exp. Share is an item that allows all Pokemon in your party to earn experience points from a battle, even if they do not participate. You can obtain the Exp. Share by defeating the Team Rocket grunt in the Rocket Hideout in Mahogany Town.
Rare Candies are items that increase a Pokemon's level by one when used. You can find Rare Candies by defeating wild Pokemon or by buying them from the Poke Mart in Goldenrod City.