Я думаю, что + - это единственная проблема, поэтому я обычно заменяю ее чем-то другим, что, как я знаю, не будет в запросе, например, пробел (% 20)
Но в некоторых случаях вам нужны пробелы
Итак, попробуйте: Uri.EscapeDataString
Понравилась ссылка, которую вы разместили?