From Channels to Wolverine: Upgrading Messaging Without Rewriting Handlers
Prototype with Channel
Prototype with Channel
Hangfire ships fast. Then production scales out, two nodes fire the same recurring job at the same time, the outbox you bolted on doesn’t include the job table, and the audit log goes sideways. There is a better default in 2026.
MediatR is in-process only — no outbox, no retry, no transport. Wolverine is the CQRS bus most teams actually need. Here is how Granit uses it.