When you boot cold, the computer memory is blank and programs load as directed by the system. As you work, DLL's, Program Data, Background Processes etc get loaded and unloaded in/out of memory. Some programs don't propery unload data when you close them, causing some memory to remain "occupied" when it is needed for new processes. This memory (depending on how much is occupied) can slow down the entire operating system.
When you "Hibernate", the computer stores the memory in it's current state to a file, so that you can reboot and carry on from where you left off. When you reboot, the saved data is loaded back into memory, thus restoring the computer to it's previous state. In this case, all running processes along with any "orphin" data is loaded back into memory where it was before.
Depending on what you had running at the time (and what you had running previously), continuous use of "Hibernation" can give you a lot of grief. This is, however, soley dependent on what "you" do. Example:
My main desktop (used for programming, audio editing, video editing, internet, etc) gets rebooted often, due to the many applications I use.
My Laptop however, pretty much only gets used for programming and rarely anything else. I usually Hibernate this one, but still shut down all apps (thus saving all "my" data) before doing so. This simply allows for a faster boot if I have a "brain explosion".
The basics: If you are an intensive user of your computer, then "close everything" and shut down.
If you are working on something and get called away, then hibernate. Remember, that the introduction of "Hibernation" was only ever intended to store your computers state for convienience sake. Even though the memory has been saved, who knows what fault may occur on the next reboot (think Windows), and therefore wipe out the contents of your saved memory. If this happens, then your work can't be recovered, as the memory file is automatically deleted on bootup.
Be good. If you can't, don't get caught!