It's not a perfect solution, but under Settings > Phone, you can toggle "Silence Unknown Callers" and you're basically done. Your Contacts app basically becomes a whitelist, and anyone else goes to voicemail.
Obviously a super blunt instrument, but anyone legit who isn't in my contacts already will leave a VM and I can call them back. I could see this being non-workable for people who get a lot of legit calls from unknown numbers, though.
I looked at a few of the third-party robocall apps like Robokiller, but some of them (at least when I checked) wanted me to upload my whole address book, which was a non-starter.
I also run the Verizon free anti-spam app. I think it's helping? Hard to say since I don't know about calls I'm not getting.