I'm very happy with Ooma, which does a great job blocking robocalls, thanks to their own user-sourced database as well as a seamless NoMoRobo integration.
The catch is that you need Ooma Premier to take advantage of it, which is $10/mo. Very much worth it though, for that and the other Premier features.