Since there is a limited supply of bitcoins you need a reason for the miners to continue mining. Thus there is a fee for each transaction,
The limited supply of bitcoins isn't the reason for transaction fees,
the limited supply of block-space is.
With QT it is 0.0001 at the moment I think.
0.0001 per kB,
the bigger (in terms of
Bytes, not
amount send) your transaction is, the higher the fee should be.
With several other clients you dont have to pay this fee, but if you dont pay the fee the miners not put your transaction into a new block and thus the coins will never reach their goal.
It's untrue, that they
will never reach their goal,
true is, that there's still lots of miners (thank god) that will include fee-less transactions.
It all depends on your transaction,
the bigger it is and the
younger the inputs are, the better it is to pay an according fee,
otherwise you could end up waiting days, weeks, months, or maybe even forever to get a confirmation.