Звучит как работа для регулярного выражения. Это будет зависеть от правильности формирования HTML-кода, то есть он найдет только элемент title внутри элемента head.
Regex regex = new Regex( ".*<head>.*<title>(.*)</title>.*</head>.*",
RegexOptions.IgnoreCase );
Match match = regex.Match( html );
string title = match.Groups[0].Value;
У меня нет моего чит-листа с регулярным выражением передо мной, так что, возможно, его нужно немного подправить. Обратите внимание, что в случае отсутствия элемента заголовка проверка ошибок также отсутствует.