Firstly there are no true..spam blockers..if there was you run the risk of losing important real emails.
Instead what you get are effectivley spam filters, and most are learning filters. By this I mean that initially on set up, the spam filter accepts all email. so initially you get all your junk email as normal. But you go through those emails, mark them as spam then the next time the spam filters learn what is spam and hey presto, it will still let you know its accepted the spam but it will be automatically redirected to a junk email folder, where it will auto delete its content every so often, so it saves you time and effort..in the end.
But..be warned on two things, firstly I still check the junk folder in case it accidently marked any genuine emails as spam, so it can still take as long without the filter, it depends really on how good the filter is, and secondly I still get tons of junk email, so it will help to slow it down, but it wont stop it alltogether.
As for which one, there are many, but I use Mozilla Thunderbird. Its an easy to use email programme that is free to install, and it has its own inbuilt email spam filter, quite good, free and mostly reliable and has many settings so you can use the filter however you like.
Hope this helps