// the find
dotnet/MQTTnet
MQTTnet is a high performance .NET library for MQTT based communication. It provides a MQTT client and a MQTT server (broker). The implementation is based on the documentation from http://mqtt.org/.
MQTTnet is the de facto standard MQTT library for .NET — client and broker in one package, full MQTT 5 support, no external dependencies. It's what you reach for when you need MQTT in a .NET IoT, edge, or backend project and don't want to write your own protocol stack.
Full MQTT 3.1, 3.1.1, and 5.0 support including the v5 extras that actually matter in production (shared subscriptions, topic aliases, user properties, enhanced auth). The ManagedMqttClient handles reconnection and QoS message queuing automatically — the thing that trips up most hand-rolled clients. Now under the dotnet GitHub org, which means it's not going anywhere. 636 unit tests plus BenchmarkDotNet benchmarks, and the benchmark app ships with the repo so you can reproduce the 150k msg/sec claim yourself.
The broker is not production-grade for large-scale deployments — no clustering, no persistence out of the box (you implement the retention interface yourself), and the session state lives in memory. The ASP.NET Core integration is a separate NuGet and the samples show it's not trivial to wire up correctly. MQTT over QUIC is absent and there's no sign it's coming. The embedded broker is useful for testing and small edge deployments, but anyone expecting to run this as a serious broker at scale will end up on Mosquitto or EMQX anyway.