キーワードはたくさんありますが、他の技術と混同しやすいものや、抑えておきたい開発技術をピックアップしています。
(お断り:弊社の経験や現在の考えに依る内容となりますので、あくまで参考として。また、網羅性はなく、トピックの粒度を意識したものではありません。)
.NET
クロスプラットフォームのオープンソース開発者用プラットフォームです。WindowsやmacOS、Linux、Android、iOSなど様々なアプリケーションを開発することができます。
以前は「.NET Framework」、「.NET Core」、「Mono(Xamarin)」といった複数の.NETの処理系技術が存在していましたが、それらが全て統合された形となります。
.NETの新しいバージョンは毎年11月にリリースされており、2022年冬時点では「.NET 7」が最新です。2023年11月にはLTS版である「.NET 8」がリリース予定です。
これから新しいアプリケーションを開発する状況で、Microsoft系の技術を選択する場合には、.NETをベースとして開発をすることが解です。
.NET MAUI
.NET MAUI(.NET Multi-platform App UI)は、C#とXAMLを使用するクロスプラットフォームフレームワークです。
Xamarinが2024年5月にサポート終了となりますが、その後継という位置づけになります。
C#を用いてそれらに対応したネイティブアプリを、開発コストを抑えながら作成することができます。
「Visual Studio 2022(version 17.3)」でも利用できるようになり、開発フレームワークの選択肢としては今後より存在感のあるものとなっていくかと思います。
ASP.NET Core
新しくWebアプリケーション開発を行う場合、どのような技術を選択するかは難しいです。(特にマネジメントにとって長期的な運用を考慮する場合には)
以前は、LAMPに代表されるようなスクリプト系での開発にするか、JavaでのWEBアプリケーション開発にするか、または、MicrosoftのASP.NET(またはASP.NET MVC)かが大きな選択肢でした。
特に、MVC以前の純粋なASP.NETは、社内システムではよく使われていましたが、商用の選択肢としてのプレゼンスは特に日本では弱い傾向にあった(人気がなかった)と思っています。
現在はASP.NET Coreが現れMicrosoft系技術も選択肢として以前より大きくなりました。ASP.NET Coreはオープンソースとなり、IISは必須ではなくなりました。.NET Coreにより、サーバサイドでもクロスプラットフォームとなっています。 JavaScript系のフロント技術により、リッチなユーザインタフェースの実現が以前より容易で当たり前になった現在、デスクトップアプリケーションが活躍する領域は(少し)狭くなりました。特に従来から使用しているC#を継続したい開発者によっては、十分な選択肢となります。結果、技術選定の選択肢は増えてしまいました。
ASP.NET Core Blazor(Blazor)
C#とWeb技術(HTMLやCSS)を使用してWebアプリケーションが作れるフレームワークです。
C#を用いてSPAアプリケーションを作成することが用意にできます。また、.NETライブラリの既存資産を再利用したい場合や、.NET系のデスクトップアプリをWebアプリケーションに移行したい場合などにも、有力な選択肢となります。
ただし、現状では性能面でJavaScriptに劣るため、新規開発での選択肢としては積極的に採用する理由は余り見当たりません。
また、.NET MAUI Blazor(BlazorWebView)という技術により、Blazorで作られたWebアプリケーションを.NET MAUI上で動作させることも可能です。
UWP
UWP(ユニバーサルWindowsプラットフォーム)は、Windows 10が動作する様々なデバイスで実行可能な、共通のバイナリを提供します。UWP以前には、ソースコードレベルで互換性のあるUniversal appは存在しましたが、UWPではバイナリレベルでの互換性を実現しています。
ただし、現状UWPの積極的な開発は行われておらず、「Windows App SDK」へ開発がシフトしていることをMicrosoftが発表しています。
そのため、新しいWindowsデスクトップアプリケーションを開発する状況でも、UWPを選択することは殆どないと考えます。
Windows App SDK(WinUI 3.0)
Windows App SDKは、Windows 10以降に対応するコンポーネントと開発ツールがセットとなったものです。
ただし、現時点では満足できる品質ではなく、今後のバージョンアップに期待したいところです。
WPFやUWPからの移植先としては、選択肢の一つとなると思います。