Regarding the code you posted:
public async Task GetERC20Tokens()
{
var result = await _BlockchainClientManager.GetAddresses(CurrencySymbol.Ethereum,
new List { "0xA3079895DD50D9dFE631e8f09F3e3127cB9a4970" });
var nonEthereumResult = result.FirstOrDefault(a => !a.Key.Equals(CurrencySymbol.Ethereum));
Console.WriteLine(
$"Token: {nonEthereumResult.Key} Balance: {nonEthereumResult.Value.First().Balance}");
}
Which service are you communicating with to retrieve the tokens and their balances? Etherscan.io?