What is the difference between Spot Instance and On-demand Instance in Amazon EC2?

Spot Instance and On-demand Instance are very similar in nature. The main difference between these is of commitment. In Spot Instance there is no commitment. As soon as the Bid price exceeds Spot price, a user gets the Instance. In an On-demand Instance, a user has to pay the On-demand rate specified by Amazon. Once they have bought the Instance they have to use it by paying that rate.
In Spot Instance, once the Spot price exceeds the Bid price, Amazon will shut the instance. The benefit to user is that they will not be charged for the partial hour in which Instance was taken back from them.