Hay varias formas, esta es cómoda y eficaz:
NuGet package Microsoft.Extensions.Configuration.Json 6.0.0

En el program.cs creamos un nuevo ConfigurationManager y le añadimos nuestro archivo de configuración con AddJsonFile.
Para acceder a secciones conocidas como ConnectionString basta con usar las extensiones .GetConnectionString(«csname»)
Para la configuración lo más cómodo es tener una clase con las mismas propiedades «Properties.cs» en este ejemplo y enlazar con el método bind.
–>program.cs
using Microsoft.Extensions.Configuration;
ConfigurationManager configurationBuilder = new();
configurationBuilder.AddJsonFile("appsettings.json");
string cs = configurationBuilder.GetConnectionString("csName");
Properties config = new();
configurationBuilder.GetSection("Settings").Bind(config);
Console.WriteLine(config.Cantidad.ToString() + config.Color + cs);
–>appsettings.json
{
"ConnectionStrings": {
"csName": "Server=.\\sql2019;Database=db_dev_fotero;User ..."
},
"Settings": {
"Color": "rojo",
"Cantidad": 12
}
}