We only have a cell phone. If I don't recognize the caller, I don't answer. Then, I add them to my contacts under the name Zspam and assign a silent/no ringtone, so I never hear the call. I can put numerous numbers on the same contact.
I figure in most cases, if they want to get ahold of me, they'll leave a voice message. If I'm expecting a call from someone, and I happen to get one From a spammer, once I say hello, if I don't immediately hear anything, I know it is a nuisance call. If I get a person, I ask the, to add me to the do not call list. Malicious or not, they're getting placed into my spam contact.
A bit more expensive, but, if you need a land line for an alarm system or medical purposes, you can always pay for one, and turn the ringer off on any attached phones. Esssentially, using it for all outgoing only calls (not giving it to people as your contact number).
For me, I found that AT&T didn't have great cell signal at my home, but Verizon did. My neighbor uses AT&T and has some device to improve his signal at home (not sure if it ties to wi-if or what).
I haven't used the Google number, but friends have and like the call screening it provides.