Most software costs over 100 US dollars. How can you give it away?
A better question is how do software companies get away with charging so much?
Software is not like making a car. Once you've made one copy of your software, the production costs to make a million more are tiny (there's a good reason Microsoft has so many billions in the bank).
Look at it another way: if you had an endless supply of sand in your backyard, you might be willing to give sand away. It would be foolish, though, to pay for a truck to take it to others. You would make them come and get it themselves (equivalent to downloading off the net) or they can pay someone else to deliver it to their door (equivalent to buying a CD).