I'm Canadian, so my answers might differ from American users.
First choice for most payments: credit card. I get a 2% cash back (about as good as it gets in Canada, sigh), and it's paid off in full every month so there are no interest payments or fees. I net about 400$/year from that (note: our house insurance, car insurance, groceries, life insurance, electric, telephone, etc: everything goes on the credit card. What you see is basically the total amount of our non-mortgage spending).
Second choice: cash. It's convenient for small amounts (coffee, 2$ widget from the hardware store, etc). It's handy in stores that charge a fee for credit card processing (they're not supposed to, but some do anyway). And, finally, if someone is doing work for you and you pay them cash, sometimes you can negotiate the final amount of the bill. After which, whether they chose to report the income is their own business. ;)
And to your point re: Canada: debit is my LAST choice, because our bank, while otherwise decent, charges per transaction over 15 transactions/month. 15 covers out paycheques and transfers to mortgage/investments/credit card/a cheque or two, but doesn't really give a lot of leeway to make purchases. I refuse to pay a monthly fee to pay for things when my credit card will pay ME a fee so I can pay for things. When given the choice, I prefer it when the money flows towards me instead of the other way!