I am using the 0.4.0 release. Is it possible to send bitcoins without paying a fee? Who gets the fee ? Is it only miners discovering new blocks?
It is possible to send Bitcoins without paying any fee. The easiest way is if your transaction meets the following requirements:
The transaction only sends coins to one address, plus the return of change. (No more than two 'out' scripts.)
The transaction doesn't need to gather a large number of small transaction outputs. (You are spending funds you received in a sensible way, not as a large number of micro-transactions.)
The funds are stable. That is, you aren't spending funds you recently received.
Otherwise, the transaction fee goes to the miner who includes your transaction in a block.
Currently, it is possible to get any valid, standard transaction into a block without paying a fee if you are willing to be sufficiently patient. You may need to specifically configure your client to connect to a client known to accept such transactions and known to relay them to miners. (Luke Dash Jr. runs one such node, with IP address