Sleep: The computer is on in a reduced power mode.
Hibernate: All the running programs are saved to a HUGE file. The computer is physically off. When you turn it on the running programs are reloaded from the file so it appears they were never exited.
I use hibernate to turn off the computer and sleep when I don't need to use it right now, but know I will come back after a short while.