Pokémon Diamond and Pearl/Iron Island

Iron Island is where you'll get a rare egg so you need an empty slot in your party. No HMs are needed. Exit your boat and climb the stairs into the cave.

You can get some good experience levelling up. You will be attacked by a lot of Graveler and that's new to your Pokédex. Ice and Water attacks will make short work of the enemies. There are also some trainers and items found here.

Note also that you will have a companion who will heal you after every battle, so feel free to battle wild Pokémon as much as you want.

Crossing the Cave
Here's what to do for clearing the cave:
 * Go down the eastern flight of stairs.
 * Climb upstairs, then east, then downstairs, then south, then up the eastern of stairs, down the elevator.
 * Go down west set of stairs, get partner.
 * Take the first path south, fight some trainers, then continue south, then upstairs, then southward to fight a handful of trainers, down stairs, up stairs, and down the elevator.
 * This gets you the egg. Go through the cave door, up the elevator, and out of the cave.

Pokémon Encounters

 * Graveler
 * Steelix
 * Onix
 * Egg: received from your companion. Hatches into Riolu, who then evolves into Lucario.