Ecruteak, Olivine, or Goldenrod.
Ecruteak is a nice place, close to Goldenrod, and in the route outside, I can find the basic form of my favorite Pokemon.
Olivine is by the sea so one can go to the beach whenever, and it's semi-close to Goldenrod.
Goldenrod has everything, but if it were any bigger, it would be easy to get lost. And of course, you'd probably only be able to get an apartment.