Если вам нравится кодировать в C # и работать с .Net framework, я бы порекомендовал вам взглянуть на WPF. WPF - это отличный графический интерфейс, в котором вы можете делать практически все, а также делать его блестящим! WinForms может быть легче понять, но я бы сказал, что WPF более «перспективен на будущее». Еще один положительный момент заключается в том, что WPF действительно похож на Silverlight , поэтому, если вы хорошо справляетесь с WPF, вы также сможете писать приложения Silverlight - если это интересно. Пожалуйста, не пытайтесь изучать MFC ... Я не могу поверить, что многие используют MFC сегодня по другим причинам, чем то, что они использовали его раньше, и не получили возможности измениться.
Есть много хороших заданий для программистов .Net, поэтому возможность обрабатывать некоторые GUI-структуры в дополнение к C # и общие знания о .Net-инфраструктуре будут иметь смысл.
Когда речь заходит о том, что вы способны "обеспечить некоторую производительность, такую как архиваторы, криптографические алгоритмы, кодеки", это действительно не должно зависеть от вашего выбора среды графического интерфейса. Этот вид кода будет записан в слоях вне уровня GUI и обычно будет привязан к GUI. С WPF вы напишите, например, свой. криптографические алгоритмы в C # в каком-либо классе, независимом от уровня GUI, и тогда представление, написанное в WPF, будет связываться с кодом C # и получать ответ отсюда. Однако если вы используете WinForms, вы все равно будете делать то же самое, и производительность зависит от алгоритмов, а не от GUI.
Когда дело доходит до начала работы с WPF, есть много вопросов о том, как SO помогает с этим. Таким образом, вы должны найти хорошую помощь с быстрым поиском.
Удачи!