Coins that you receive from various parties become unspent transaction outputs, which can be used to create outbound transactions (coins that you send to other wallets). So, let's assume the following scenario. You receive 2 BTC from someone; that creates a single unspent transaction output (or "unspent" for short) of 2 BTC. Now, if you wanted to send 0.5 BTC to someone else, the transaction is created such that the 2 BTC unspent is used to send the transaction. Instead of just sending the 0.5 BTC, what is actually happening is that the 2 BTC is sent out of your wallet, 0.5 BTC is sent to the external party, and the remaining 1.5 BTC (less fees) is returned to your wallet as a "change output". In order to return that change output to your wallet, the blockchain needs to have an address to send it to; that address is known as a "change address".