protobuf-net 3.4.0

protobuf-net

A contract-based serializer for .NET that reads and writes Google's "protocol buffers" wire format. The API follows normal .NET patterns — broadly comparable to XmlSerializer or DataContractSerializer — so you annotate the types you already have:

[ProtoContract]
public class Person
{
    [ProtoMember(1)] public int Id { get; set; }
    [ProtoMember(2)] public string Name { get; set; }
}

using var file = File.Create("person.bin");
Serializer.Serialize(file, new Person { Id = 12345, Name = "Fred" });

Members are identified on the wire by number, not by name, so the numbers matter: pick them once and keep them stable. Everything the attributes do can also be configured at runtime, via RuntimeTypeModel.

Contract-first works too: generate C#/VB from a .proto schema at build time, from the command line with protobuf-net.Protogen, or in your browser at protobuf-net.dev.

Build tools — analyzers that check your contracts, and the generator that emits serializers at compile time so native AOT and trimming work — ship with this package by default; opt out with <ProtoBufDisableBuildTools>true</ProtoBufDisableBuildTools>.

More

Showing the top 20 packages that depend on protobuf-net.

Packages Downloads
prometheus-net
.NET client for prometheus.io
7
prometheus-net
.NET client for prometheus.io
8
prometheus-net
.NET client for prometheus.io
9
prometheus-net
.NET metrics exporter for the Prometheus monitoring and alerting system
7
prometheus-net
.NET metrics exporter for the Prometheus monitoring and alerting system
8
prometheus-net
.NET metrics exporter for the Prometheus monitoring and alerting system
9

.NET Framework 4.6.2

.NET 8.0

.NET Standard 2.0

.NET Standard 2.1

Version Downloads Last updated
3.4.30 0 16.09.2026
3.4.29 0 15.09.2026
3.4.28 0 15.09.2026
3.4.21 1 02.09.2026
3.4.19 1 31.08.2026
3.4.14 1 31.08.2026
3.4.0 1 03.09.2026
3.3.21 1 31.08.2026
3.3.8 3 13.08.2026
3.3.0 3 13.08.2026
3.2.56 7 26.03.2026
3.2.55 7 26.03.2026
3.2.52 7 26.03.2026
3.2.46 7 26.03.2026
3.2.45 7 26.03.2026
3.2.30 7 26.03.2026
3.2.26 7 26.03.2026
3.2.16 7 26.03.2026
3.2.12 7 26.03.2026
3.2.8 8 26.03.2026
3.2.0 7 26.03.2026
3.1.33 8 26.03.2026
3.1.26 7 26.03.2026
3.1.25 7 26.03.2026
3.1.22 7 26.03.2026
3.1.17 8 26.03.2026
3.1.4 8 26.03.2026
3.1.0 7 26.03.2026
3.0.131 7 26.03.2026
3.0.101 6 26.03.2026
3.0.73 7 26.03.2026
3.0.72 8 26.03.2026
3.0.62 7 26.03.2026
3.0.52 8 26.03.2026
3.0.29 8 26.03.2026
3.0.27 7 26.03.2026
3.0.24 7 26.03.2026
3.0.21 6 26.03.2026
3.0.18 7 26.03.2026
3.0.13 7 26.03.2026
3.0.2 7 26.03.2026
3.0.0 7 26.03.2026
2.4.9 7 26.03.2026
2.4.8 7 26.03.2026
2.4.7 7 26.03.2026
2.4.6 7 26.03.2026
2.4.4 7 26.03.2026
2.4.1 7 26.03.2026
2.4.0 5 26.03.2026
2.3.17 8 26.03.2026
2.3.16 7 26.03.2026
2.3.15 6 26.03.2026
2.3.14 9 26.03.2026
2.3.14-alpha1 8 26.03.2026
2.3.13 8 26.03.2026
2.3.7 7 26.03.2026
2.3.6 9 26.03.2026
2.3.5 7 26.03.2026
2.3.4 5 26.03.2026
2.3.3 7 26.03.2026
2.3.2 8 26.03.2026
2.3.1 7 26.03.2026
2.3.0 7 26.03.2026
2.3.0-gamma 7 26.03.2026
2.2.1 7 26.03.2026
2.1.0 10 26.03.2026
2.1.0-alpha-5 6 26.03.2026
2.1.0-alpha-4 6 26.03.2026
2.1.0-alpha-3 7 26.03.2026
2.1.0-alpha-1 8 26.03.2026
2.0.0.668 7 26.03.2026
2.0.0.666 7 26.03.2026
2.0.0.664 7 26.03.2026
2.0.0.663 7 26.03.2026
2.0.0.640 7 26.03.2026
2.0.0.638 7 26.03.2026
2.0.0.621 5 26.03.2026
2.0.0.619 7 26.03.2026
2.0.0.614 7 26.03.2026
2.0.0.612 8 26.03.2026
2.0.0.611 8 26.03.2026
2.0.0.602 7 26.03.2026
2.0.0.601 7 26.03.2026
2.0.0.480 6 26.03.2026
1.0.0.280 7 26.03.2026