What is the difference between sub-classing and hooking ?

There are several posts on these topics by legends Paul Caton and LaVolpe and other Users as well on pscode, my question is which one is stable and best one to use in projects.

Above topics are new for me and I am looking for simple and step by step technical information or tutorial to understand these topics. Any link to such topics will be appreciated.