using System.Collections.Generic;
public string name {get;set;}
public static void Main()
lst.Add(new A{a = 10, b = 10, name = "a"});
lst.Add(new A{a = 10, b = 99, name = "b"});
lst.Add(new A{a = 9, b = 99, name = "c"});
lst.Add(new A{a = 9, b = 10, name = "d"});
var ret1 = lst.OrderBy(x => x.b).Select(x => x).OrderBy(x => x.a);
var ret2 = lst.Select(x => x).OrderBy(x => x.a);
var ret3 = lst.OrderBy(x => x.b).OrderBy(x => x.a);
var ret4 = lst.OrderBy(x => x.a).ThenBy(x => x.b);
Console.WriteLine(string.Join(", ", ret1.Select(x => x.name)));
Console.WriteLine(string.Join(", ", ret2.Select(x => x.name)));
Console.WriteLine(string.Join(", ", ret3.Select(x => x.name)));
Console.WriteLine(string.Join(", ", ret4.Select(x => x.name)));