public static void Main()
var thelist = new[] {"1", "item", "10", "2", "3", "4", "5", "a", "b", "c"};
var list = thelist.Where( s => s.All( x => char.IsDigit( x ) ) )
.OrderBy( r => { int z; int.TryParse( r, out z ); return z; } )
.Union( thelist.Where( m => m.All( x => !char.IsDigit( x ) ) )
Console.WriteLine(i.ToString());