title: Xamarin Forms: singleton or new HttpClient
body: <p>in Xamarin forms I have to consume a remote web services. In many Xamarin courses I have seen the use of HttpClient. For example:</p>
  
  <pre class="lang-cs prettyprint-override"><code>private async Task&lt;HttpClient&gt; GetClient()
  {
      HttpClient client = new HttpClient();
  
      if (string.IsNullOrEmpty(authorizationKey))
      {
          authorizationKey = await client.GetStringAsync(Url + "login");
          authorizationKey = JsonConvert.DeserializeObject&lt;string&gt;(authorizationKey);
      }
  
      client.DefaultRequestHeaders.Add("Authorization", authorizationKey);
      client.DefaultRequestHeaders.Add("Accept", "application/json");
  
      return client;
  }
  </code></pre>
  
  <p>Each time must perform a remote call, instantiate a new HttpClient. Is the right pattern to instantiate a new HttpClient on every new request or must be used the same HttpClient instance for every request?</p>