.NET Fiddle

CSharp · Console

/Program.cs

using System;
using System.Collections.Generic;
using Newtonsoft.Json;

// see: https://stackoverflow.com/a/60541324/1016343
public class Program
{
	public void Main()
	{
		string json = @"{
			'site_id':'1',
			'endpoints':
			[{
				  'miu_id':'111',
				  'meter_number':'88',
				  'consumption_history':        
				  [{
					  'reading_date':'2010-02-17T00:00:00',
					  'consumption':1.0,
					  'consumption_with_multiplier':1.0
				  }]
			}]
		}";

		dynamic j = JsonConvert.DeserializeObject<dynamic>(json);
		string site_id = j["site_id"].ToString();
		var endpoints = j["endpoints"];
		foreach (var endpoint in endpoints)
		{
			string miu_id = endpoint["miu_id"];
			miu_id.Dump();
			// ...
			var consumption_histories = endpoint["consumption_history"];
			foreach(var consumption in consumption_histories)
			{
				string reading_date = consumption["reading_date"];
				reading_date.Dump();
				// ...
			} // foreach
		} // foreach
	}
}
;