Я понимаю и согласен, что ссылка на System.Windows.Forms.dll
выглядит некрасиво, но я думаю, что это лучше, чем уменьшить повторное использование кода и заново изобретать велосипед, вместо этого просто еще одна ссылка.
Я использую, например, System.Windows.Forms.Application.ProductVersion
в своих консольных приложениях, мне это не нравится, но думаю, что это меньшее зло ..
См. Также этот вопрос по SO