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...

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 54 minutes ago
Added to GitGenius on September 13th, 2026
Created on March 16th, 2017
Open Issues & Pull Requests: 203 (+0)
GitHub issues: Enabled
Number of forks: 1,152
Total Stargazers: 5,066 (+0)
Total Subscribers: 150 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 6.2 days
Mean response time: 121.7 days
90th percentile: 378.8 days
Tracked items: 131

Most active contributors

Sign in to see contributor activity.

How this project is maintained

100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 78% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 49
New in 7 days: 2
Closed in 7 days: 0
Avg open age: 769 days
Stale 30+ days: 46
Stale 90+ days: 42

Recent activity

Opened in 7 days: 2
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 2

Top labels

  • bug (64)
  • question (28)
  • feature-request (22)
  • documentation (1)
  • managed-client (1)

Detailed Description

MQTTnet is a high-performance .NET library for MQTT-based communication that provides both client and server implementations supporting MQTT protocol versions up to 5.

The library addresses the need for efficient message-oriented communication in .NET applications by implementing the MQTT protocol with a focus on performance and minimal overhead. It achieves approximately 150,000 messages per second throughput and requires no external dependencies, containing only the low-level MQTT implementation. The tool supports multiple communication channels including TCP, TCP with TLS encryption, and WebSocket connections, with an async-first API design.

Developers should choose MQTTnet for IoT and real-time messaging scenarios within the .NET ecosystem. The client component offers both a low-level implementation for fine-grained control and a managed variant that automatically maintains connections, handles subscriptions, and queues application messages with QoS support. The server component supports multiple simultaneous protocol versions, extensible credential validation, retained message persistence, custom message interception for transformation, and topic-based subscription validation. The library is compatible with Microsoft Azure IoT Hub and works across most .NET Framework versions and CPU architectures, including UWP clients, though UWP servers do not support TLS.

The project maintains comprehensive test coverage with approximately 636 unit tests and includes sample code demonstrating client connection, subscription, publishing, and broker hosting patterns. Development activity shows consistent engagement with the codebase through regular updates and maintenance of the protocol implementation.