A Hard Fork is a radical change to the protocol that makes blocks/transactions on a blockchain valid. A hard fork requires all nodes or users to upgrade to the latest version of the protocol software.
This essentially creates a fork in the blockchain: one path follows the new upgraded blockchain, and the other path continues along the old path. Typically, after a short period of time, users of the old chain will realize that their version of the blockchain is outdated or irrelevant and will quickly switch to the latest version.
A Hard Fork can be implemented to fix significant security risks in older versions of the software, to add new functionality, or to reverse transactions (Hack on the Ethereum blockchain DAO).
Hard Fork and Soft Fork are essentially the same thing in that when the existing code of a cryptocurrency is modified, an old version is kept while a new version is created. However, with a Soft Fork, a single blockchain will remain valid as users adopt the update. The two Forks create a divergence, but a Hard Fork creates two chains while a Soft Fork creates one.
A blockchain with a PoW validation algorithm is more easily attacked during a Hard Fork, because the mining power is divided between two blockchains. There is often an impact on the community that splits on two different visions. Hard Forks are announced in advance by the development teams, so investors tend to buy a cryptocurrency before a hard fork to own the same amount on both blockchains.