Tough question in my opinion.
If you're learning Mandarin, you probably would want to go to a place where 1) the locals speak it natively, and 2) there are not too many foreigners.
Shanghai is not good for immersion, because the locals speak Shanghainese, and there are far too many foreigners.
Beijing has the Beijing accent (which is very distinct, and depending on your taste, potentially awful to listen to 儿话), and there are a fair number of foreigners.
I've heard places like Harbin are better for immersion. It is close to neutral Mandarin accent, and you won't be tempted to falling back on English.
However, if you're also looking to have a good time, have a decent standard of living, see interesting sites, and all the rest... it makes it harder to choose.
I'd say for immersion, you have to choose somewhere in the north.
In terms of places to visit, it depends on what you like, but look at the usual tourist guides.
Of course, everything depends on your own priorities and tastes in the end.