I'd say just find a place with lots of trainers like the battle tower or gym leaders and set the Pokemon you want to level as the first one i your party then switch to another Pokemon to defeat the trainer's it will give some EXP to the first party Pokemon or try and get an EXP Share :) hope it helped and thanks :)
If you want a good place to level up your pokemon, I highly recommend the Iron Island or the Fuego Ironworks.
In Pokemon Diamond, a very good place to go is North of the Fight Area. All of the many trainers have level 45-60 Pokemon.
In a pokewalker.
I have soul silver but i guess the Pokemon league.
in elite 4.
kind of because there are strong Pokemon raise it to level 80 and you'll be fine
Well that is a hard question. It all depends on the level of your pokemon. To train level 25-30 pokemon the best place is Desert Resort. Another place that is good is Cold Storage.
mt.silver is a good place because it has lvl.50 pokemon there
Nowhere.
Anywhere that u find Pokemon that are close to the shromishes level.
Unfortunately the only area for good training is the Pokemon league.
in mt.silver or in the Pokemon elite four in think!