Hard fork and soft fork are the protocol upgrade mechanism in blockchain. Hard fork creates an incompatibility between the previous version and the latest version on software. There is always a possibility of split of blockchain (like Ethereum Classic). However, it is debatable, if they are preferred upgrade mechanism for blockchain.
Fig: Hard Fork Vs. Soft Fork
There are also two sub-types of hard forks: strictly expanding hard forks, which strictly expand the set of transactions that is valid, and so effectively the old rules are a soft fork with respect to the new rules, and bilateral hard forks, where the two rulesets are incompatible both ways.
Fig: Venn diagram to illustrate the fork types
If you like the article, please follow us @ether_world (Twitter) and Ethereum Blockchain Technology (Facebook) for more updates, technical blogs and general discussion on Ethereum and blockchain technology.