私がWinUIを触りはじめたとき、一番困ったのは「まず何を見ればいいのか分からない」ことでした。WinForms・WPF・UWP・WinUIと似た名前が多く、公式情報もドキュメント・GitHub・サンプルアプリに散らばっていて、全体像をつかむだけで思った以上に時間がかかりました。
そこで、当時の自分が最初に欲しかった情報——WinUIの全体像・見るべき公式サイト・開発を助けるツールを、この1ページに集約しました。これからWinUIを始める人が、同じ回り道をせずに最初の一歩を踏み出せるようにするのが狙いです。
Table of contents
Open Table of contents
WinUI 3とは
WinUI 3(Windows UI Library 3) は、Windowsのネイティブデスクトップアプリを作るための、Microsoft公式のUIフレームワークです。Fluent Design に沿ったモダンな見た目、高性能な描画、XAML+C#(またはC++)による開発モデルが特徴で、Windows 10 (1809) 以降・Windows 11 で動作します。
WinUI 3は Windows App SDK の一部として提供されます。ここが最初に混乱しやすいポイントなので整理しておきましょう。
- Windows Forms(WinForms) … 2000年代から続く最も歴史の長いフレームワーク。手軽で情報も豊富ですが、デザインは古く、高DPIや最新のモダンUIへの対応は苦手です。
- WPF … XAML+データバインディングで柔軟なUIを作れる定番。今も安定して使えますが、機能追加は控えめです。
- UWP … Fluent Designを初めて取り入れた世代。ただしOSに強く紐づき、更新がOSバージョン依存でした。
- WinUI 3 … UWPのUI部分をOSから切り離し、NuGetで独立して更新できるようにした後継。最新のFluent Designを、OSアップデートを待たずに使えます。
- Windows App SDK … WinUI 3を含む、モダンWindowsアプリ開発の土台(UI・API群のセット)。
ざっくり言えば、「これから新規でWindowsデスクトップアプリを作るなら、まず候補に挙げるべき本命がWinUI 3」 という位置づけです。Microsoftも新規開発の推奨フレームワークとして案内しており、Build 2026 では「Windowsアプリのネイティブな本番プラットフォーム」として WinUI に改めて注力する方針が示されました。フレームワーク選定で迷ったときの安心材料になります。
過去のUIフレームワークと比べたメリット・デメリット
WPFを触った経験のある目線で、WinUI 3を実際に使って感じた良し悪しを正直にまとめます。フレームワーク選定の判断材料にしてください。
メリット(触ってよかった点)
- 見た目が最初からモダン … WinForms/WPFで頑張って作り込んでいた「今風のUI」が、標準コントロールのまま Fluent Design で手に入ります。角丸・アクリル・ダークモード対応が初期状態で綺麗です。
- UIがOSから独立して更新できる … UWPの最大の弱点だった「新機能がOSアップデート待ち」が解消。NuGetのバージョンを上げるだけで最新UIを使えます。
- XAML+MVVMの資産が活きる … WPF経験者なら、XAMLとデータバインディングの考え方はほぼそのまま通用します。学び直しのコストが小さい。
- 将来性 … Microsoftの本命 … WPFは安定していますが機能追加は控えめ。新規開発でMicrosoftが最も力を入れているのはWinUIです。
デメリット(つまずいた点)
- 情報がまだ少ない … これが本記事を書いた最大の理由です。WPFなら日本語の解説が大量にありますが、WinUIは英語+公式頼みになりがちで、調べもの自体に時間がかかります。
- 細かい機能が手薄 … ウィンドウ位置の記憶やトレイ常駐など、WPFなら標準や定番ライブラリで済んだ機能が素では足りず、後述のNuGetで補う必要があります。
- サードパーティ製UIライブラリが発展途上 … WPF向けの成熟した有償コンポーネント群と比べると、選択肢はまだ少なめです。
- 移行はそれなりに手間 … 既存WPFアプリの単純な載せ替えは効きません。名前空間やコントロールの置き換えが必要で、ゼロからの新規開発のほうが向いています。
まとめると、「既存の安定したWPFアプリを無理に移す」より、「これから作る新規アプリの本命として選ぶ」のがWinUI 3の正しい使いどころ、というのが実際に触った実感です。
まず押さえたい参考サイト
WinUIは情報が新しく、公式が最もあてになります。次の3つをブックマークしておけば、調べもので迷いません。
- Microsoft Learn(WinUI 3 公式ドキュメント) 日本語の一次情報。導入手順・チュートリアル・APIリファレンスまで揃っています。まず最初に読むべき場所です。
- WinUI Gallery のソースコード(GitHub: microsoft/WinUI-Gallery) 後述する公式サンプルアプリの中身がそのまま公開されています。「あの見た目のXAMLはどう書くのか」を実物のコードで確認できるのが強力です。
- WinUI リポジトリ(GitHub: microsoft/microsoft-ui-xaml) WinUI本体のリポジトリ。ロードマップやIssue、既知の不具合を追えます。ハマったときに同じ症状のIssueが見つかることも多いです。
開発を助けるアプリ
コードを書く前に、「どんなUIが作れるのか」を目で見て触ると理解が一気に進みます。次のアプリを入れておきましょう。
-
WinUI 3 Gallery(WinUI Gallery) Microsoft Store から無料で入る公式ショーケースアプリです。ボタン・ナビゲーション・データ表示など、全コントロールを実際に動かしながら、対応するXAML/C#コードをその場でコピーできます。WinUIを触るなら最初に入れるべき一本です。

WinUI 3 Galleryでは、コントロールを実際に操作しながら、対応するXAMLコードをその場で確認できます。
-
Windows Community Toolkit(GitHub: CommunityToolkit/Windows) Microsoftとコミュニティが提供する、標準にない便利なコントロールやヘルパー集。
SettingsCardなど「よく作るUI」が用意されており、実装量を大きく減らせます。Community Toolkit Gallery アプリでデモを確認できます。 -
MVVM Toolkit Sample(MVVM Sample App) 後述する
CommunityToolkit.Mvvmの使い方を学べるサンプルアプリ。WinUIで避けて通れないMVVMパターン(画面とロジックを分離する設計)を、動くコードで学べます。
役立つNuGetパッケージ
WinUIは素の状態だと「窓の最大化位置の記憶」「システムトレイ常駐」のような細かい機能が意外と手薄です。次のパッケージで補うと開発が快適になります。
- WinUIEx WinUI 3の痒いところに手が届く拡張の定番。ウィンドウのサイズ・位置の保存と復元、中央表示、カスタムバックドロップ、スプラッシュ画面、タスクトレイ常駐、OAuth認証ヘルパーなどをまとめて提供します。ウィンドウまわりで悩んだらまずこれ。
- CommunityToolkit.Mvvm
MVVMを最小コードで実装するための必須級ライブラリ。
[ObservableProperty]や[RelayCommand]といった属性を付けるだけで、面倒な定型コードを自動生成してくれます。軽量で他フレームワーク非依存なのも利点。 - CommunityToolkit.WinUI
上記 Windows Community Toolkit のコントロール群をNuGetから個別に導入できます。必要なものだけを
CommunityToolkit.WinUI.Controls.*のように追加できます。 - H.NotifyIcon 通知領域(タスクトレイ)アイコンに特化したライブラリ。常駐型アプリを作るなら選択肢になります。
- CsWin32(Microsoft.Windows.CsWin32)
C#からWin32 API(生のWindows API)を呼びたいときの必携。Microsoft製のソースジェネレーターで、
NativeMethods.txtに使いたいAPI名を書くだけで、面倒な[DllImport]のP/Invoke宣言や構造体・定数をコンパイル時に自動生成してくれます。WinUIEx が用意していない低レベルなウィンドウ操作などを自前でやりたい場面で活躍します。(.NETフレンドリーなラッパーで手軽に済ませたいなら Vanara も選択肢です)
最初の一歩:開発環境の準備
手を動かす準備は、次の3点だけです。環境は2026年時点の最新である Visual Studio 2026 を前提にします(WinUI開発では最新版が強く推奨されており、後述の XAML Hot Reload が快適に使えます)。
- Visual Studio 2026 をインストール
- インストーラーの「ワークロード」タブで 「WinUI アプリケーション開発(WinUI application development)」 にチェック
- Visual Studioの新規プロジェクトで 「空白のアプリ、パッケージ化 (WinUI 3 in Desktop)」 テンプレートを選ぶ
あとは F5 で実行すれば、最初のWinUIアプリが立ち上がります。
ここで知っておきたいのが、WinUI 3にはWPFのようなドラッグ&ドロップのXAMLデザイナー(デザインタブ)が無いという点です。これは最初に戸惑うところですが、代わりに XAML Hot Reload が用意されています。アプリを起動したままXAMLを書き換えると、再ビルドせずに画面へ即座に反映されるため、実機の見た目を見ながらUIを詰められます。「デザイナーで置く」のではなく「動かしながらXAMLを直す」スタイルに慣れるのが、WinUI開発のコツです。
まずは空のウィンドウを起動し、WinUI 3 Gallery で気になったコントロールのコードを貼り付け、Hot Reloadで動かしてみるのが一番の近道です。
まとめ
WinUI 3は、これから新規でWindowsデスクトップアプリを作るときの本命フレームワークです。情報が散らばっていて最初は苦労しましたが、要点を押さえれば始め方はシンプルです。
- 概要と立ち位置を理解する … WinUI 3 は Windows App SDK に含まれる、UWPの後継となるモダンUI。WPF比では「見た目・将来性で有利、情報量・成熟度で発展途上」
- 公式を押さえる … Microsoft Learn/WinUI-Gallery/microsoft-ui-xaml リポジトリ
- 触って学ぶ … WinUI 3 Gallery と Community Toolkit で実物を確認
- 足りない機能を補う … WinUIEx・CommunityToolkit.Mvvm などのNuGet
- 環境を作る … Visual Studio 2026 +「WinUI アプリケーション開発」ワークロード
まずは WinUI 3 Gallery を入れて、気になったコントロールを1つ動かしてみるところから始めてみてください。
次に読む(関連記事)
全体像をつかんだら、目的に応じて次の記事へ進んでください。
- 学ぶ順番に迷ったら:WinUI 3開発の始め方ロードマップ
- 画面とロジックを分ける設計:WinUIでMVVMをはじめる
- ウィンドウ操作・Win32呼び出し:ウィンドウ操作入門(WinUIEx / CsWin32)
- 独自URIでアプリ起動:プロトコルアクティベーション入門
- 完成後の配布:MSIXパッケージングと署名・配布 →自動更新の入れ方
- WPFから移すなら:WPFからWinUI 3への移行の勘所
- 開発全体の抜け漏れ防止:デスクトップアプリ開発チェックリスト
