While managing a BuddyPress-powered site I discovered (after analysing thousands of registrations), that it's more convenient and maintainable to have a block-list of domains. Here is mine: https://gist.github.com/slaFFik/69b129dbfdc2f3e128a6
I also use some stop-words lists, but they are not part of this conversation.

Spammers are using patterns (because they are automated), and regular users - are not. We have lots of public domains for emails (gmail, outlook, yahoo) and literally millions of those, that you don't know (all other domains, where users can have own email set up). So it's easier to scan using grep or SELECT for those records, that are repeating (patterns), than those that are not.

So I believe, that the plugin BP Restrict Signup by Email Domain was created not to prevent spam, but to be used in corporate and/or edu sphere, where you need to enable to register only users from a camp, or university, or company etc.

But the plugin is definitely useful. Thanks for sharing, both Sarah and Ray!