I wasn't tryig to imply that you were a fool or anything, or uneducated etc. This really is a field of its own, and requires specific study to understand. Your questions are valid and are exactly the right way to begin understanding how it works.
As for your comments "actually are listed mainly from yahoo, hotmail and gmail."
Most of the time, mail didn't REALLY come from one of those accounts, they are simply spoofed. An account from soem offshore server where there is no legal restrictions on such mail can easily appear to come from a more popular host, such as GMail or Yahoo.
It is like an alias, it isn't the real name, just the name the sender want you to see. When you reply to it, it can be set to automatically update your address as valid in a server based in Guam. if you write a blocking rule for that address, the next email they send will be spoofed from a different address so your filter is useless.
Filtering/bocking domains are the first step and is the most ineffective.
Proper spam control uses heuristics ot weigh text used in an email, first teh address is checked and a message meeting certain criteria will be scored (say a 2), then the subject and body are scanned for specific keywords that you select (such as FREE=4, OFFER=2, CREDIT CARD=5, PORN=9 etc.)and each time the word is repeated a base score is added (ex. FREE OFFER would score a 6).
Once a preset total score is obtained, the message is considered spam and is deleted. If the total score is below your threshold, it is delivered.
So that's basic heuristics. then there are RBLS, which are black lists, these are VERY unreliable and often incorrect. a good spam filter uses multiple checks, heuristic, address blocks, RBL checks etc. Generally you would set the RBL check to a low score, that is added to teh total of all checks. Again, once yoru maximum allowable score is reached, as a combination of all scans, then it is deemed SPAm and deleted.
As you can imagine, it takes ages to set up and fine tune such a scoring system, so many GOOD spam software designers will offer a list of preset rules and words with weights that get you started and you can fine tune to reduce the number of false positives that are deleted (legit mail that is blocked as spam).
On top of all that, some solutions (mainly residential ISP blockers) will actually download mail into your inbox BEFORE scanning it, for the most part this is okay but bad mail is still downloaded before it is scanned and deleted.
A better solution is one that works witha company's Exchange server and actually scans and deletes mail BEFORE it is accepted into the servers, post office.
Conclusion: IN order for an ISP or email host (GMail etc.) to scan mail for spam, they would need ot consult each and every user as to the proper weighting to use when scannign their incoming email. Too many legit emails would be deleted or too few would be deleted, making it an expensive and unreliable service.
As it is, ALL email hosts and ISP protect you from SOME spam. They do block a LOT of mail and the stuff that actually gets through is from savvy senders who know exactly what makes it through and what doesn't.
It's really not easy and really isn't something that can be done on a general level, only a personal level.
Some company's deploy very expensive hardware/software solutions, I worked as an admin for one group that spent over $15K just on the customised SPAM/Exchange server with software to block mail, it took a year of tuning but reduced junk mail from several hundred per user per day down to a couple per user per day without them missing a lot of important email. (I used to hear that one every day! "where's my mail from XXXXXX? It's important, you better get that server fixed so I don't lose email!")
Hope that helps, also read the GWAVA link that I offered somewhere here too, it will give you amssive manual that explains it all if you are really interested.
Best of luck!
OM