I can't claim to be any expert, but I know at least that in GSM a handset must be allocated a dedicated control channel from a limited number of timeslots in the current cell for the duration of an SMS transaction. This happens on the receiving and transmitting ends. In order to establish said channel, the handset is first woken up through paging, which places load on another shared channel.
For each physical frequency, there are only something like 16-24 slots available. For each physical station, there may only be handful of frequencies in use, perhaps only one.
Installation of a base station is not cheap. In a busy metropolitan area with even 100 teenagers getting upset because their SMS failed to go through the first time they tried to send it (and repeatedly pumping send until it finally works), at least make a guess at the math involved for infrastructure costs to support this kind of thing. Don't forget to factor in the load it places on the random paging channels shared with voice signalling (again, more investment in physical frequencies to reduce error rates here).
In short, I wish someone who actually understood this stuff wrote some kind of rebuttal, the rhetoric is clearly at least a few parts bullshit.
Don't try to imagine this using some analogy like tiny UDP packets being spat out on a packet switched network, that's not what these networks look like. Transaction time is on the order of seconds, which requires a "physical" circuit to be setup beforehand.
Yes, sending SMS would be practically free on the Internet, but that's comparing apples to oranges.