Покритикуйте код.
Какие элементы ооп нужно внедрять в приложения данного типа/паттерны проектирования.
Что можно реализовать лучшее или какие лучшие практики.
Где можно сделать оптимальний чтоб было меньше кода чтоб он был легко читаемый.
Возможно более целесообразно использования других либ.
Не совсем понял для чего используется код. Лучше загрузите весь проект на github. Чтобы можно было сразу скачать и посмотреть нормально.
Не совсем понял - для чего Вы используете реестр?
sivabur: насколько я понял .net framework сам об этом заботится. Проблема в том, что реестр Вы не всегда за собой почистите + могут быть проблемы с правами доступа + другая программа может случайно перезаписать.
Ну или как вариант - xml, рядом с программой.
И как всегда все забыли про очень важную вещь.
Это же C#. Microsoft дает четкие соглашения имен (naming conventions), настоятельно рекомендую придерживаться им.
И вообще, стоит почитать гайдлайны в MSDN, там все написано.