Transaction confirmation is needed to prevent double spending of the same money.
Usually when new Bitcoins are earned the owner isn't free to utilize them immediately. As soon as transaction is started it is sent to Bitcoin network for proccessing and has to be included in a block before becoming legitimate. The process of implementing a transaction in a newly found block is called a transaction confirmation. Inclusion in one block = one confirmation and when there are six or more of such confirmations the transaction is considered confirmed. This feature was introduced to protect the system form repeated spending of the same bitcoins (double-spending).
Number of confirmations
Classic Bitcoin client will show the transaction as "unconfirmed" until there are six confirmations (six found blocks). Sites or services that accept Bitcoin as payment for their products or services can set their own limits on how many blocks are needed to be found to confirm a transaction. The number six was chosen deliberately: it is based on a theory that there's low probability of wrongdoer being able to amass more than 10% of entire network's hashrate for purposes of transaction falsification and an insignificant risk (lower than 0.1%) is acceptable.
For offenders who don't possess significant computing power 6 confirmations are an insurmountable obstacle. In their turn people who possess more than 10% of power aren't going to find it hard to get 6 confirmations in a row. However to obtain such a power would require millions' dollars worth of investments which lowers the risk of an attack.
Bitcoins that are distributed by network for finding a block can only be used after 100 confirmations e.g. 100 discovered blocks. Classic Bitcoin client won't display the coins earned for solving a block until there are 120 confirmations.