Authentication Server Offline
Handshaking issues are commonly experienced on Tuesdays between the hours of 5 a.m. and 11 a.m. Pacific Time, as realm and authentication servers go down for routine maintenance. Times are often extended beyond 11 a.m.; therefore, always check the Realm Status page at http://us.battle.net/wow/en/status to verify maintenance status. If it's not a Tuesday and you are experiencing problems, you can verify known issues on the Service Status page at http://us.battle.net/wow/en/forum/1011700/.
IP Release and Renew
If all servers are up and you are experiencing problems at handshaking, then you should flush the DNS or renew your IP address. DNS caching issues can often times prevent the game from communicating with the servers. The easiest way to do this is to open a Windows' command prompt by typing "CMD" in the "Run" or "Search" box on the Windows' start menu and pressing "Enter." At the prompt, type "ipconfig /release" and press "Enter." On the next prompt, type "ipconfig /renew," and press "Enter." You'll reconnect to the network with a refreshed IP. Next type "ipconfig /flushdns," and press "Enter." When the next command prompt appears, it is safe to close the command window. If this was the problem, you will get past the handshake on your next connection to the game.
Driver and Operating System Updates
Outdated drivers and operating system files cause various connection issues, including handshake and authentication problems. For instance, the game servers might request information that the user's hardware cannot handle without the most recent drivers and updates installed. This applies to the handshaking process if either the network card drivers, router firmware or graphics driver are out-of-date. If you are lucky enough to bypass the handshaking process and connect to the game, fatal exceptions will eventually occur or you'll experience continual connection losses while in-game. Consult your hardware provider's driver page, as well as the update page for your operating system and router.
Data Corruption
When connecting, the servers authenticate your game version and file data. If any of this information does not match the server data, then the game hangs at the authentication or handshaking screen. In order to fix this problem, locate the "WTF," "Interface" and "Cache" folders in the local "World of Warcraft" directory and delete all three of them. Try connecting again; thereby, forcing the download of these folders with the proper account data and character information. If this option does not work, then run the Repair Utility, which is also in the "World of Warcraft" directory. This utility will verify all game files, not just account and character data, against server file structure and information. In either case, if corrupt data is preventing you from passing the handshaking process, then this will correct the issue.