Sign up online for a free "CapitalOne360" checking account at
Capital One bank.
https://home.capitalone360.com/Use any of their free funding options to fund your CapitalOne360 account.
Use their P2P feature to send funds for free to
BitFloor.com.
Post a "limit order" to purchase bitcoins and receive a 0.1% bonus.
Transfer your bitcoins to from
BitFloor to your wallet for free.
There you go. No fees, and not too complicated. You'll need to have a week or so of patience when you first set up your CapitalOne account and fund it. And then you'll have to have a few days of patience each time you transfer funds to
BitFloor since that transfer can take up to 4 business days to clear.
EDIT: As of 2013-04-17 BitFloor has ceased all operations.