Measuring the Performance of JSON Alternatives in .NET
Introduction In this post I'll be talking about JSON serialisation performance using the base JSON classes included in .NET ( System.Text.Json ) as well as what used to be the de facto standard for serialisation, and was even included in the .NET templates, Newtonsoft.Json . I was curious to find out if there were any big differences in performance between the different APIs. For starters, this is the type and instance that we'll be serialising in these examples: public record Data(int Id, string Name, DateTime Timestamp); var data = new Data(1, "Ricardo", DateTime.Now); Lets start first with Newtonsoft.Json ! Newtonsoft.Json Newtonsoft.Json has been around for a while, and it was once the default JSON serialiser for .NET, including .NET Framework and .NET Core. It has lots of features, and the new .NET API System.Text.Json hasn't (yet) come close to them. It essentially contains two different serialisers/deserialisers: JsonConvert JsonSerializer The way t...