Zapping the PRAM is the first step in troubleshooting; it resets all hardware configurations to default in order to ease the load of the set of system extensions during the boot process. Why is this so useful? If you load a new application or hardware driver into the OS, a set of preferences and possibly extensions are added to the System folder; if there is a resource conflict, similar to a PC's interrupt request conflict, while loading the system's OS, the boot process can/will freeze. Resetting parameters which have changed since the OS was loaded can help to resolve this conflict. In fact, I like to attempt to load the OS with extensions disabled(Mac Safe Mode?) to see if there is an extension conflict(if the OS loads with extensions disabled, you have your culprit), view the Extensions folder to attempt to locate the offending extension, terminate it, and attempt a reboot. If the OS now loads successfully with extensions re-enabled, you've resolved the issue. If not, zapping the PRAM is a nice basic resolution; I like to see if I can find the conflicting extension first, though, contrary to what Apple recommends.