Well, I've recently ported a massive setup of SA rules and I've tried to add all functions that are supported by SA to rspamd. The only ones unsupported are pyzor/razor/dcc (all that is covered by fuzzy check: https://rspamd.com/doc/modules/fuzzy_check.html).
Both systems support statistics (rspamd uses 5-gramms hidden Markov model and SA uses naive bayes), they both support different backends for statistics (redis and sqlite for rspamd), per-user statistics, autolearning. Among network checks, they support URIBLs, RBLs, DMARC, DKIM, SPF. Obviously, both systems support regexp rules. However, I'm not an expert in SA features and might thus miss something...
And since the author's already here: A similar comparison between rspamd and dspam would be neat as well - I remember that I stumbled upon rspamd in the past, but went with dspam for some reason.
I think it was either related to learning (but rspamd can do that, right?) or the db backend (I didn't want to run multiple database backends and anything that didn't support postgresql was out right away). Then again, I might be completely off.
Both systems support statistics (rspamd uses 5-gramms hidden Markov model and SA uses naive bayes), they both support different backends for statistics (redis and sqlite for rspamd), per-user statistics, autolearning. Among network checks, they support URIBLs, RBLs, DMARC, DKIM, SPF. Obviously, both systems support regexp rules. However, I'm not an expert in SA features and might thus miss something...