Вот одна из хороших выбранных стратегий то что .NET Core кроссплатформен.
Но зачем туда пихать вещи которые не кроссплатформены, например WinForms или WPF.
После этого уже с опаской начинаешь использовать и все остальное, совсем нет уверенности что на другой платформе это будет работать или может и будет работать но ощутимо иначе. Например поведение каких-то сетевых, файловых, асинхронных вещей может зависеть от платформы или то что связано с потоками.
Есть ли где-то сводки что протестировано на разных платформах и работает +- одинаково, а что существенно отличается ?
Например недавно кто-то писал что Guid.New() тормозил на Linux на старых корах, но потом пофиксили это, возможно есть еще известные проблемы которые надо знать.
”Жить стало лучше... но противнее. Люди которые ставят точку после слова лучше становятся сторонниками Путина, наши же сторонники делают акцент на слове противнее ( ложь, воровство, лицемерие, вражда )." (с) Борис Немцов