You fetch all the data, so if there are millions of rows in the table, it will take a while.
our tests work fine:
IEntityField newIDField = CustomerFields.Country;
newIDField.Alias = "NEWID()";
newIDField.ExpressionToApply = new Expression();
ISortExpression sorter = new SortExpression(new SortClause(newIDField, SortOperator.Ascending));
CustomerCollection customers = new CustomerCollection();
customers.GetMulti(null, 0, sorter, null);
Your instance of the queryfactory isn't needed btw...