If your credit card does not have an annual fee and you always pay on time, never incurring any interest, then the cc company makes all their money on the merchant fees.
If you pay an annual fee, they still make most of their money on the merchant fees because they generally give a decent benefit in exchange for the annual fee.
If you pay interest because you carry a balance, they make money on both ends - your interest and the merchant fees.
AFAIK, Amex can offer huge rewards for their high-annual fee cards because they don't have to pay interchange to any bank. Most Visas and MCs you see are branded by some other bank - a big national one, your local credit union, whatever. Amex is their own bank. So they collect every dime of the cardmember's annual fee, monthly payments and the merchant fees.
If you pay an annual fee for a card and don't use the rewards, you are throwing money away. I get a free flight to Europe or Asia once a year out of my Amex MR points. The card costs $450/year, but I use other benefits from that card which offset that fee before I even touch my MR points to book personal travel.