Если вы читаете строку из app.config, я предполагаю, что это что-то вроде следующего:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="errorString" value="An error occured.\r\nPlease try again later."/>
</appSettings>
</configuration>
В этом случае ваш пример кода должен выглядеть следующим образом:
keyValuePairs.Add("1", @"An error occured.\r\nPlease try again later.");
И оттуда должно быть очевидно, почему отладчик отображает как он есть (особенно если вы читаете ответ JaredPar .
Вам лучше использовать словарь ресурсов для хранения строки, что позволит вам легко вставлять символы новой строки в редакторе VS.
Редактировать: Просто по прихоти я попробовал следующее:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="errorString" value="An error occured.
Please try again later."/>
</appSettings>
</configuration>
Скомпилировано отлично и выдает правильные результаты.