Generating a list of unique random longs
I doubt that algorithmic efficiency can be improved but you may consider an implementation similar to this which leverages idiomatic LINQ.
public IEnumerable&lt;long&gt; GenerateRandomNumbers()
{
    var f = new Faker();

    return 
        Enumerable.Range(0, int.MaxValue)
        .Select(
            _ =&gt; f.Random.Long(5000000000, 8000000000))
        .Distinct();
}