title: When can MSAL refresh a token?
body: <p>According to <a href="https://github.com/AzureAD/microsoft-authentication-library-for-dotnet/wiki/AcquireTokenSilentAsync-using-a-cached-token" rel="nofollow noreferrer">this site</a>, "AcquireTokenSilent is capable ... of refreshing a token when it's getting close to expiration (as the token cache also contains a refresh token)" which is great, but what are the restrictions on when MSAL is allowed to refresh a token?</p>
  
  <p><a href="https://stackoverflow.com/questions/51332122/access-token-refresh-token-with-msal">This stackoverflow question</a> implies that sometimes the server sends a special refresh token, but when I call App.PCA.AcquireToken...() it returns an object of type AuthenticationResult which doesn't have any members named anything like Refresh (in our Xamarin/C# app) so it doesn't seem like there is actually a separate token only used to figure out refreshing?</p>
  
  <p>Does AcquireTokenSilent() require Internet access?  Does it always check in with the server?</p>