CFD stands for Contract For Difference and is an agreement between you and your broker. When the contract is closed the broker promises to pay a certain amount for every pip the bought currency has moved in your favour, if it moved against you it's you who pays the broker. The term comes from the fact that upon closing the position you take the difference between the closing price and the opening price and that money is transferred/deducted to/from your account. It is important to note that at no point you actually physically or virtually possess the bought currency, nor must you deliver the sold currency.
The FX spot market differs from that in the last point: You physically or virtually exchange currencies. This means you receive/pay interest on the bought/borrowed currencies if held overnight. And also this implies that there's no "open position" like in the CFD case (put differently your USD balance doesn't remember if it came about by selling AUDs or EURs). Some platforms, however, have a "close everything" button, i.e. to sell all currencies that aren't your base currencies.
In this regard perhaps even more surprising but depending on your broker, and whether or not they grant you direct market access and, if so, the actual market (ECN), you will trade in lots, that means the quotes you see are only valid for when you trade exact multiples of the lot sizes of the currencies involved (so called even-lot trade). Anything odd needs to be traded in an odd lot order for which there's either a surcharge or wider spreads.