They make money the same way they always did: by the spread on what they earn on your cash sweep account and what they pay you. I think Schwab is reported to earn a couple billion dollars a year on that.
It probably costs them more to charge a commission than not to.
WellsFargo is the king of free trades, then probably TDAmeritrade, then Vanguard, then Fidelity, then Schwab. There are probably others. I don't care if all brokers have 5000 different ETFs or funds that have free trades. I only care about free trades on the 10 to 12 ones that I want to own.