iPhone gets stuck in restore mode and the usual fixes (hard reset, restore from iTunes, 3rd party apps, etc) won't work:
Symptom:
During software upgrade the iphone gets stuck in the recovery loop. The screen shows the iTunes logo and USB cable.
When the phone is connected to iTunes it is recognized as needing to be recovered, but once you start the process iTunes just stays at "preparing phone for restore" and will never begin the process.
Some of these instructions sound silly or redundant, but this is exactly what I had to do.
Problem was solved by downgrading my version of iTunes:
Uninstall iTunes and all associated applications (apple mobile support, bonjour, apple updates, itunes)
Download and install iTunes 10.6.3.25
Find the iTunes folder in My Music
Rename the iTunes Library.itl to iTunes Library.old - This will hide the library from the downgraded iTunes installation. This is required because a library created by a newwer version of iTunes can't be read by an older version of iTunes.
Open iTunes. You will get a message that says iTunes can't find the library. It gives you the options of creating one yourself or allowing iTunes to create a new one. Let iTunes create it. It will be named something like iTunes 1.
Close iTunes.
Plug your iPhone into your computer.
Open iTunes.
If iTunes opens but stops responding, use the task manager to end the application.
You will need to open iTunes in safe mode. Hold Ctrl+Shift before opening iTunes and hold them until you get a message saying iTunes will be opened in safe mode. Click ok.
iTunes will now say that it found a phone that needs to be restored. Follow the directions provided in iTunes.
At the end of the process iTunes generates an error saying that the phone can't be restored, which is ok because all you need is to get the phone out of the loop, which is what this does.
Note: The phone is not upgraded. It still has the software version you started with, but it's out of the loop and usable.
After everything is complete:
Uninstall iTunes and all associated applications
Find the iTunes 1 folder in My Music and delete it.
Find the iTunes folder in My Music. Find the iTunes Library.old file you changed earlier.
Change it back to iTunes Library.itl
Download and reinstall the latest version of iTunes.