the problem here is that all you have to do is choose delete all an you won't be charged... you're generally charged for reading, not receving.
That only applies to a few wireless carriers. I think T-Mobile, Tracfone, and Cingular are the only two I know of. But to counter this, just leave the program, running. No need to let up because their phone will be so flooded with messages, they won't be able to use it without another "message received" message popping up. Verizon (which supposedly boasts the biggest network and number of customers) does charge by the message. Sure it may be free for the first (increments of 250 for $5) number of messages you pay for, but after that it is ten cents each. If the program runs like I imagine it would (and when does it ever) it would send something like, (completely random number) 100 messages a minute give or take. A simple mouse click on the "start" button would send a constant flow of messages (maybe input into a text box or something) to the desired number. After a little while, they will have racked up charges that they won't believe. If you are feeling truly evil, you can simply leave the program running to render the phone useless.
Just a thought.