Update: Thanks to J-Wo, I've added some steps that should make syncing Apps much easier. New steps are in Italics. I've also removed some steps that are no longer applicable.
Like many people on the interwebs, I recently updated iTunes to the newest version (9.1.xx). After doing so, I was faced with a handful of issues that made syncing with my iPhone a miserable experience. Before 9.1, my total backup+sync time each day was about 3-5 minutes. After updating, I was looking at 30-40 minutes for a backup+sync, which is completely ridiculous. On top of that, I was also having issues with iTunes crashing completely when copying certain songs to my iPhone. The only workaround to this was to uncheck those songs to make sure they didn't sync with my phone. Not really an acceptable "solution" in my book.
Fortunately, I have solved both of these problems by downgrading iTunes to the previous version (9.0.3, in my case). The downside is, the process is going to take up a good portion of your day. The upside is, iTunes is back to being functional.
I would suggest reading the full article before following the instructions, just to make sure you really want to go through the trouble. In my experience, it was totally worth the time and effort it took, but not everyone is the same.