Coloque a primeira letra em maiúscula para palavras com mais de 2 caracteres C #

using System;
using System.Text.RegularExpressions;

public class Program
{
public static void Main()
{
string[] parts = "university of washington".Split(' ');

for(int i = 0; i < parts.Length; i++)
{
Match match = Regex.Match(parts[i], @"w{3,}",RegexOptions.IgnoreCase);
if (match.Success)
{
// Check for empty string.
if (!string.IsNullOrEmpty(parts[i]))
{
parts
[i] = char.ToUpper(parts[i][0]) + parts[i].Substring(1);
}
}
}

string result = string.Join(" ", parts);
Console.WriteLine(result);
}
}

// input – university of washington
// out put – University of Washington

Isso pode ser ajustado para qualquer comprimento necessário, alterando / adicionando um parâmetro de comprimento no Regex.

ps: Não usei LINQ porque ele teve que rodar em uma versão mais antiga do framework .Net.