Конечно; dotnet-protobufs - это порт java-версии, поэтому он имеет очень похожий API и подход к основной реализации Google; код-гем, неизменность и т. д.
Protobuf-net совместим с байтами, но является полной повторной реализацией с нуля, следуя стандартным идиомам .NET - так знаком для пользователей XmlSerializer и т. Д. Он также работает с изменяемыми объектами (и неизменяем в зависимости от настройки и структурируется в v2) и имеет дополнительные хуки для WCF, удаленного взаимодействия и т. д.
Оба могут работать с .proto (возможно, dotnet-protobufs на лучше в этом, чем protobuf-net); но protobuf-net может работать с существующими .net poco / DTO и т. д. без .proto или какого-либо кода.
Кроме того, protobuf-net предлагает такие вещи, как поддержка наследования, но вы можете не использовать его в своем сценарии, поскольку он не так легко сопоставляется с определениями .proto.