Moving on from Windows Communication Foundation

WCF vs gRPC - Round 2

After my previous post comparing WCF to gRPC, a couple of people on Twitter and in the comments asked which WCF binding I had used for the performance comparison. The answer to that was “whatever the default binding is”, which is basic HTTP binding. As Clemens Vaster pointed out, that is not an “apples-to-apples” comparison, and a fairer WCF vs gRPC test would use NetTCP binding. So I re-ran my performance tests using NetTCP binding in a simple console host for the WCF service. Continue reading


One of the alternatives recommended by Microsoft for organizations looking for a migration path away from WCF on .NET Framework is gRPC: a low-overhead, high-performance, cross-platform RPC framework. The upcoming .NET Core 3.0 has first-class support for gRPC; out of the box, you can create a new project with dotnet new grpc. This creates an ASP.NET Core 3.0 project with the usual Program.cs (remember, ASP.NET Core apps are console apps) and Startup. Continue reading