Telegram.Bot is an MIT-licensed C# client library for the Telegram Bot API, built for .NET developers who want to create Telegram chat bots without writing raw HTTP calls and JSON serialization by hand.
What it is
Telegram.Bot is a .NET client for the Telegram Bot API, the HTTP-based interface Telegram provides for building bots. It lives in the .NET ecosystem and is distributed through NuGet, where it is published under the package name Telegram.Bot. The README describes it as the most popular .NET client for that API, and the project is maintained by the Telegram Bots team, which focuses on producing NuGet packages for chatbot development. It targets .NET Standard 2.0 and .NET 6 at minimum, with .NET 8 or newer recommended.
The concrete problem it solves is that the Bot API is a bare HTTP interface: calling it directly means issuing requests, handling responses, and modelling Telegram's types yourself. Telegram.Bot replaces that hand-rolled HTTP and serialization layer with a typed client library, so bot logic can be written against C# types and methods instead of raw endpoints. It does not host bots and it is not a bot framework with an opinionated architecture; it is the core package that bot projects reference, with optional extension packages layered on top when extra functionality such as the Login Widget or Passport is needed.
Key capabilities
- Published on NuGet as
Telegram.Bot, referred to as the core package and always required for developing Telegram bots.
- Tracks Bot API version 10.3, as declared in the project badges.
- Targets .NET Standard 2.0 and .NET 6 at minimum, with .NET 8 or more recent recommended.
- Ships optional companion packages
Telegram.Bot.Extensions.LoginWidget and Telegram.Bot.Extensions.Passport for additional functionality.
- Fully tested with unit tests and systems integration tests before each release; the test cases are self-documenting and serve as examples for Bot API methods.
- Documented in a dedicated book at
https://telegrambots.github.io/book, with a Quickstart guide and a separate examples repository, TelegramBots/Telegram.Bot.Examples.
- Supported by a Telegram group chat for questions and a news channel for project announcements.
Who uses it and how
- .NET developers and teams building Telegram chat bots, the use case the package name, topics, and README all point at.
- Projects that need Telegram Login Widget or Telegram Passport behaviour, which add the corresponding extension packages to a bot that already depends on the core package.
- Developers who prefer to learn the API from executable tests, since the project's test cases double as examples for Bot API methods.
- Bots that must run across runtimes, because the .NET Standard 2.0 and .NET 6 targets allow the same library in older and current .NET applications.
- Users who need community support rather than commercial support, through the linked Telegram chat and the documentation book.
Getting started
Install the Telegram.Bot NuGet package, then follow the Quickstart guide in the documentation book; extension packages are added only when their extra functionality is required.
How it compares
The facts do not list paid products this project replaces. Among the similar tools they do name, the README points to a Telegram Client API implementation written 100 percent in C# for cases where the Bot API is too limited, so Telegram.Bot sits on the bot-side of that split: it covers bots operated through the Bot API rather than full Telegram client accounts. Its extension packages are part of the same family and are additive rather than competing implementations.
When to use it — and when not to
Choose it when the Bot API covers the required behaviour and the stack is .NET, since hosting, bot tokens, and Telegram connectivity remain the operator's responsibility, while the library itself imposes no database, object storage, or mail server. Do not choose it when the use case needs the Telegram Client API instead, because the README states that the Bot API may be too limited and directs those users to a separate C# client API implementation. A further limitation is scope and maturity signalling: the README excerpt is brief, the substantive guidance lives in the external documentation book, and prospective users should confirm current release cadence against the registry snapshot rather than assuming the excerpt is exhaustive.
project readme (upstream, from github) — read inline
.NET Client for Telegram Bot API


Telegram.Bot is the most popular .NET Client for Telegram Bot API.
The Bot API is an HTTP-based interface created for developers keen on building bots for Telegram.
Check 👉 Bots: An introduction for developers 👈 to understand what a Telegram bot is and what it can do.
We, the Telegram Bots team, mainly focus on developing multiple NuGet packages for creating chatbots.
➡️ If Bot API is too limited for your use cases you can try Telegram Client API implementation written 100% in C#
🔨 Getting Started
Please check ➡️ the Quickstart guide.
🚧 Supported Platforms
Project targets .NET Standard 2.0 and .NET 6 at minimum, with .NET 8 or more recent recommended.
📦 Extension Packages
This project is referred to as the core package and is always required for developing Telegram bots.
There are extension packages that you can include in your bot projects for additional functionality:
✅ Correctness & Testing
This project is fully tested using Unit tests and Systems Integration tests before each release.
In fact, our test cases are self-documenting and serve as examples for Bot API methods.
Once you learn the basics of Telegram chatbots, you will be able to easily understand the code in examples and
use it in your own bot projects.
🗂 References
[!NOTE]
RIP Poulad. The team would like to thank him for his contributions to the project and the community.