A good place would be just random trainers in the desert area where you first found the anorith fossil.
At the Pokemon league.
find a place that has wild Pokemon the same level as it.
route 205 for Pokemon diamond, pearl and platinum. the trainers have Pokemon from level 10 to level 17
Pokemon league :P
elite 4
Nowhere.
The best place to train Pokemon level 40 and above is at Mt. Silver. Since you cannot gain experience through multiplayer battling, the highest leveled place is Mt. Silver. Pokemon average level 40-49 in Mt. Silver, so it is a good place to train.
train... train...TRAIN...
the place where you can breed Pokemon next to heart-home city, that's where i go
Route 201 or 202 or 203
Anywhere that u find Pokemon that are close to the shromishes level.
in mt.silver or in the Pokemon elite four in think!