I employ a "twin track" approach:
1. I have the ringer on my land line switched off. Every now and when I feel like it, I have a look at what calls I have missed and Google the odd one or two, just to double check I have dodged the idiots. If it is the bank etc I will recognise those as genuine calls and call them back.
2. If I slip up and answer one of these idiots (haven't done that for a year or so), I tell them to hang on, lay down the handset and go back to watching telly. Eventually they figure out they are paying for a call to a vacuum!