Intentando simular —en un pequeño gestor de noticias que estoy desarrollando— la forma como Wordpress elimina los acentos de los títulos de las entradas (ver función remove_accents en wp-includes/functions-formatting.php), para que las URL se vean sin problemas y mejoren el posicionamiento del sitio, encontré una referencia muy útil para hacer esa tarea de una manera sencilla usando .NET Framework 2:

static string UrlSanitize(string url)
{
	url = Regex.Replace(url, @"\s+", "-");
	string stFormD = url.Normalize(NormalizationForm.FormD);
	StringBuilder sb = new StringBuilder();
 
	for (int ich = 0; ich < stFormD.Length; ich++)
	{
		UnicodeCategory uc = CharUnicodeInfo.GetUnicodeCategory(stFormD[ich]);
		if (uc != UnicodeCategory.NonSpacingMark)
		{
			sb.Append(stFormD[ich]);
		}
	}
 
	return (sb.ToString());
}