Plus the backend doesn't move fast. The .net framework only got a json serializer recently. I am not holding my breath for system.drawing to handle HEIC!
DataContractJsonSerialiser has been around since .net 3.5 which is 2007, so 13 years. And I think the open source JSON.net has been around for longer, but I can't find a version history right now.
The .net framework only got a json serializer recently.
If by "recently", you mean more than a decade ago...Unless you are specifically referring to the web portion of .net (i.e., core or asp.net) and not the framework as a whole.
Early when JSON was new, people were using the JavaScript parser included in .NET to get the values. Then Microsoft build a small JSON parser for their ASP.NET library. But then James Newton-King build JSON.NET and Microsoft eventually switched a lot of their libraries over to it because it was just very good. It could do a lot of stuff very fast with a nice API.
Last year Microsoft introduced a new and more efficient way to allocate memory natively into .NET Core 2.0 (Span<T>). Since JSON.NET is still used by .NET Framework that doesn't support the new API, Microsoft created System.Text.Json that includes a new JSON parser that utilizes it. The first Microsoft project to use the new parser by default was ASP.NET Core 3.0.
gp is probably thinking of system.text.json which was only added to .net core in version 3, which less than a year old. But it's not been high priority to add because of a very well established open source project called JSON.net that has been around for ages.
However the full framework has had a different JSON serialiser (DataContractJsonSerialiser) since v3.5 in 2007.