Мы оказались в подобной ситуации и выбрали следующий путь: вначале мы начали размещать несколько окон WPF в оболочке приложения (все еще WinForms). Конечно, была некоторая видимая разница, но мы намеренно уменьшили разницу, смягчив новые окна. Мы полагали, что к тому времени, когда мы будем преобразовывать оставшиеся окна / элементы управления, будет легче «обновить» до более яркого опыта, так как пользовательский интерфейс будет полностью WPF, и мы можем привлечь графического дизайнера, который будет работать над их магией на основе XAML. 1001 *
Мы достигли точки, когда большинство окон - WPF. Мы начали процесс преобразования приложения оболочки WinForms в приложение оболочки на основе WPF, в котором размещены остальные WinForms. Тем не менее, у нас довольно скучные цвета, но пользователи начали замечать разницу, и, хотя она невелика, нашим пользователям все еще нравятся постепенные положительные изменения. Не долго и мы удалим последнюю WinForm. Это будет момент, когда мы выпустим наших графических дизайнеров из поводка!
Что касается производительности: я, конечно, не могу сделать общее утверждение, поскольку оно сильно зависит от ваших конкретных элементов управления / окон. В нашем продукте (несколько сотен окон) мы не обнаружили существенных проблем с производительностью, связанных с сочетанием WPF и WinForms.
Мы не смотрели ни на одну из платформ, поэтому, боюсь, я не могу их комментировать.