А с такой реализацией TestClass:
class TestClass
{
private Guid idGuid = Guid.NewGuid();
private Guid valueGuid = Guid.NewGuid();
public string Id => Format(idGuid);
public string Value => Format(valueGuid);
public override string ToString() => Id;
private string Format(Guid guid) => guid.ToString().Replace("-", "");
public class TestClassComparer : IComparer<TestClass>
{
public int Compare(TestClass x, TestClass y) => x.idGuid.CompareTo(y.idGuid);
}
}
инициализация массива минимум в 3 раза быстрее начальной, а его сортировка минимум в 11 раз быстрее. Общее ускорение по сравнению с оригинальным кодом — более чем в 7 раз.