Это то, что вы ищете?
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("base address");
client.DefaultRequestHeaders.Add("Authorization", "Basic " + System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes("clientId" + ":" + "clientSecret")));
Обновление: на основе обновленного вопроса
Я еще не пробовал, но не могли бы вы проверить это?
using(var webClient = new WebClient())
{
webClient.Headers.Add("Authorization", "Basic " + System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes("clientId" + ":" + "clientSecret")));
webClient.UploadString("https//auth.something.com","PUT","{ \"data\":\"dummy data\" }");
}