How to fix apps "waiting.." forever after sync?
The springboard controls the layout of apps on iOS and is confused.

Generally, it's not a deep corruption of the database (which you fix by restoring the phone, setting up as new and installing things again from scratch) so here are some things to try:


Turn on airplane mode in Settings app (tells the download process to chill)
Restart the device (more chilling - starts fresh, frees up RAM)
Connect to iTunes


Then you should be able to deselect the problem app (removing all traces of the attempted download) and then finally put that app on the device. The airplane mode is the most important thing since the device will try to fix itself and lock iTunes out until it realizes it can't. Once you have gotten the stuck app resolved, turn off Airplane mode to resume calls, data and WiFi service. If it doesn't resolve, you may have to erase the phone and restore it from a backup or anew.