Skip to main content

Dekaf / The pure C# Apache Kafka client

Kafka, fluent
in C#.

All the Kafka.
Right at home in .NET.

Produce, consume, and work with Kafka through a fully managed client. Built in C#, from the fluent API to the wire protocol.

Start buildingExplore the source
A place for every message.

One topic. Three partitions. Keep the conversation moving.

Partition 0offset 6
Partition 1offset 6
Partition 2offset 6
Interactive illustration · messages distributed in turnSend a message to try it
No native libraries to ship.No interop layer to cross.Just .NET 10+.

Small API.
Big conversations.

Start with a broker address and a topic. Fluent builders and async streams make the rest feel familiar.

Get the package
dotnet add package Dekaf
Follow the quickstart
Producer.cs
using Dekaf;

await using var producer = await Kafka
.CreateProducer<string, string>()
.WithBootstrapServers("localhost:9092")
.BuildAsync();

await producer.ProduceAsync(
"greetings", "hello", "Hello, Kafka!");

Connect to your local Kafka broker at localhost:9092.

Pick up the thread.

Browse all documentation

Less work for the runtime.
More room for your messages.

Spans, pooled buffers, and ValueTask keep allocations off the hot path. Explore the benchmarks and the decisions behind the performance.