In the lake in Sunyshore City where Jasmine gives you hm7 waterfall.
elite 4
An area with grass Pokemon would be best.
elite 4
Route 201 or 202 or 203
i trained mine at mt.cornet
the place where you can breed Pokemon next to heart-home city, that's where i go
the best place to train is on snover in snowypoint
route 205 for Pokemon diamond, pearl and platinum. the trainers have Pokemon from level 10 to level 17
find a place that has wild Pokemon the same level as it.
ANYWHERE
If you aren't to the Elite Four yet I would suggest either SnowPoint city or somewhere around there. Either that of in the water depending on your pokemon, for best results use a rod.
sky piller