using System; using System.Linq; public class Test { public static void Main() { string input = " aa aaa aaaa bb bbb bbbb cc ccc cccc cccc "; var words = input.Split((char[])null, StringSplitOptions.RemoveEmptyEntries).Distinct(); var lookup = words.ToLookup(s => s.Length); foreach (var group in lookup) { Console.WriteLine(string.Join(", ", group.ToArray())); } } }