Recently I moved back to Europe after 5 years in the States and, apart from all the physical stuff that had to be packed and moved, I also had to switch phones. I had switched to Verizon and gotten the Droid X and the CDMA-only no-sim-card phone couldn't come with, so I got a Nexus S unlocked and began moving apps and stuff around. Read on past the break for a tentative guide to switching phones the right way and, if you've got suggestions, drop them in the comments below.
Before getting rid of or selling your old phone, there's a few things to do. For starters, you might have games whose progress you don't want to lose or apps whose settings you've changed quite a bit and don't want to deal with redoing. If you're rooted, you can get Titanium Backup, a nifty app that'll backup your apps including all their data. Then, you can copy the target folder that lands on SD card to your new phone and run a restore on select apps. There are a few pitfalls, however, but nothing major really: I really don't recommend running a batch backup, but rather only backup apps you want and need. Otherwise, you run the risk of replacing system apps like the dialer or others, and they don't play well on other phones, especially if you switch manufacturers.
Also, homescreen replacements will most likely have to be redone manually, since not all widgets move over and it could cause some random freezes and app crashes. If you're going from one version of Android to the same on the same manufacturer, you might get lucky, but why try ?
Second, I recommend cleaning up your apps a little. If you're like me you've got a bunch of them that you used for 5 minutes and never again, or some that you keep around just in case. Think of your new phone as a way to declutter your mobile experience and get rid of some of them; one way or another, it'll make setting up your new phone a lot easier (more on that later).
Third, get the rest of your stuff off: connect the phone to a computer or pop the micro SD into said computer via an adapter and copy your music and downloads folders and whatever else you've thrown on your phone. As a last thing, if you're attached to your text messages, there are plenty of apps to move your texts into a separate GMail tab and retrieve them on the new phone - review). I don't have experience with other things, such as call history and the like, but if you do a search on our main page, I'm sure you'll find something that suits your needs.
Setting up your new phone
Once all the stuff around the old phone is taken care of, you can turn on your shiny new phone and get the basics done. Go through the initial setup, get all your accounts signed in and all the other fun stuff and let it sit for a few minutes for the initial sync. Here's a neat little trick about apps. If you set up your GMail account used to sync apps, email and calendars from the beginning, all your paid and free apps start downloading immediately after the setup. If you don't want them and want a fresh start or just want to get your Titanium backup restored onto it without chugging in a ton of data, don't set it up in the initial setup (just touch the skip button) and set it up under Settings > Accounts afterwards. This means your apps won't download at all, unless you do each one manually, but they'll still show under My Apps in the Market.
Now you can either manually install Titanium Backup and restore the old stuff once it's copied to your micro SD card or internal storage and you're rooted or start anew and just download the stuff you really need. Again, however, if you've got a VPN client setup to your liking or a game that's only half done, I recommend Titanium Backup to get the data back.
The last steps involve copying your music and stuff from the micro SD back and enjoying your new phone. If you have other tips and tricks, comment below and I can integrate them into the post to complete the info. Otherwise, I hope this helps you next time your up for an upgrade or just get a new phone.