Сегодня столкнулся с проблемой Url, в которых встречаются пробелы.
Она заключается в том, что метод HttpUtility.UrlEncode конвертирует пробелы в "+", а IIS7 уже не обрабатывает такие пути.
Оказывается, это было сделано для повышения уровня безопасности. Какую угрозу может нести знак "+" я не знаю, но видимо есть люди, которые знают.