Its free if you have bitcoin and your friend wants bitcoin. Once you bring other currencies into the mix it is often more expensive to comparable services and just as slow if not slower.
Agreed. Bitcoin is not competitive for small transactions. Given the average transaction confirmation time of 7 minutes (which will never go down) it clearly was not meant to be.
Once the major mining pools receive the transaction, it's very unlikely to be double-spent. If you try to purchase something online from a merchant accepting Bitcoin via Coinbase or Bitpay, you'll notice the transaction completes almost instantaneously.
Yes, that goes without saying. It's also true of paying friends with USD cash.