1.A soft-fork is a change in the blockchain protocol that RESTRICTS the rule-set which is enforced by the network nodes. With a soft-fork upgrade a block which is deemed valid before implementation will be considered invalid by updated nodes afterwards if it breaks the new rules. For a soft-fork upgrade to work only a majority of the hashpower is needed to be in favour of the change, and those who resist the change are kept on the blockchain anyway, but with the new rules that they don’t recognise. However, if the majority choose against the upgrade this new version will become redundant.
A hard-fork is a change in the blockchain protocol which LOOSENS the rule-set enforced by the network nodes. With a hard-fork upgrade a block which is considered invalid before the hard-fork is implemented will be considered valid by the updated nodes if it conforms to the new rules. Additionally, a hard-fork upgrade is not backwards compatible - meaning any new version will not work with previous versions - so the fork cannot be reversed. Furthermore, the nodes which upgrade go on the new blockchain, and those which don’t stay on the existing blockchain. In other words, each node goes on the blockchain it chooses.
2.Some of the reasons you would do a hard-fork are; a) you need to increase the block size on the blockchain, b) an upgrade is urgent, due to broken code, a need to redistribute funds, or to prevent a serious network abuse, c) because you consider a hard-fork to be more democratic than a soft-fork because everyone gets to choose the way forward for themselves.
3.Some of the risks of performing a hard-fork are; a) the community could be damaged due to the politics involved, b) there is the difficult decision about who should make the decision to hard-fork, and under what circumstances, c) any loss of hashpower resulting from the split could compromise network security, and d) the decision to hard-fork cannot be reversed once it has been implemented.