AFAIK, most spam blockers use either blacklists (lists of prohibited addresses) or simple filters (specific prohibited words) or probabliity-based filters (calculates probability of new email being junk based on similarity of its content to the messages you've already marked as junk).
The current crop of junk emails that I'm getting has some innocuous and legitimate-looking words (fragments from poems or news stories, etc) and the Viagra or Hot Sexxx advert is in an embedded image, which the spam filter can't read.
That's why even email apps with good spam filters, like Apple's Mail or Mozilla's Thunderbird, still fail to catch all the junk emails.
Presumably the spam filter guys will start using OCR (optical character recognition) software and get on top of this type of spam, then the bad guys will think of something new.
I don't see a real solution as long as it remains virtually free to send millions of spam emails. If it cost 1/100 of 1 cent to send an email, the economics of spamming would break down. Yes, some legitimate businesses would incur cost too. But if you are sending out millions of emails that only a tiny fraction of a percent of recipients will ever respond to, then I think that's basically spam, even if you are otherwise a legitimate business.