C# Kaigi 2026に登壇した

気付いたら開催から半月くらい過ぎてしまい、今更感がありますが、ようやく手が空いたので振り返り記事を書いていきます。

C# Kaigi 2026 | 公式サイトC# Kaigi 2026 の公式イベントサイトです。csharpkaigi.net

MagicOnion + quiche + UnityでgRPC over HTTP/3を実現する

今回の登壇ではQUIC・HTTP/3についての話をさせていただきました。

MagicOnion + quiche + UnityでgRPC over HTTP/3を実現する | C# Kaigi 2026nuskeyによる「MagicOnion + quiche + UnityでgRPC over HTTP/3を実現する」のセッション詳細です。csharpkaigi.net

C#のカンファレンスでRustの話をする謎の人として登壇しましたが、それなりに好評そうだったので良かったです。Rubyの話してる人もいたしまあええか...

.NETのQUIC周りはちゃんとしているようで意外とそうでもなく、その辺りの姿勢はどうなのかな...とは思っています。特にゲームのようなリアルタイム通信ではHTTP/3でやりたいことが多いので、モバイルでも動いてくれると嬉しいな、と。

というわけでライブラリを自作したわけですが、これが完成したのがカンファレンス当日の午前3時くらい、という超ギリギリスケジュールだったので、まだ実装が甘い部分が多くあります。正式リリースまでには、もう少しちゃんと使えるようにしておきたいところです。

印象に残ったセッション

【基調講演】C#の現在地 進化の歴史と、AI時代の.NET Everywhere

@neuecc先生による基調講演です。C#の歴史解説と、AI時代のこれからの話。

【基調講演】C#の現在地 進化の歴史と、AI時代の.NET Everywhere | C# Kaigi 2026neueccによる「【基調講演】C#の現在地 進化の歴史と、AI時代の.NET Everywhere」のセッション詳細です。csharpkaigi.net

最近のC#はそこそこ追っている側の人間ですが、さすがにC#が生まれた頃の話は知らなかったので、その辺りの話が聞けて良かったです。メソッドがPascalCaseな理由はなるほど、確かに作者の出自を考えればそうだな、と。

AI周りに関しては、正直なところ、私としてはC#とAIの相性は微妙かなーと思っています。記法に色々な派閥がある影響で統一された書き方がなく、最新のモデルでも結構読み辛いコードを錬成してきたりするんですよね。最近はGoやRustを書く機会が多いですが、やはりAIとの相性はそちらの方が強いかな...

とはいえC#が強力な場面はまだまだ多いですし、Analyzer周りが非常に良くできているのはそうなので、これからも活躍していくといいですね!

ふとしたことから始めた .NET ランタイムへのコントリビュート

@prozolicさんによる、.NETランタイムにコントリビュートするまでのお話。

ふとしたことから始めた .NET ランタイムへのコントリビュート | C# Kaigi 2026prozolicによる「ふとしたことから始めた .NET ランタイムへのコントリビュート」のセッション詳細です。csharpkaigi.net

dotnet/runtimeへのコントリビュートは前々からやりたいとは思いつつ全くできていなかったので、コントリビュータとしての知見を存分に共有していただけてとてもありがたかったです。

PR Digest.NET、いつもお世話になってます。

PR Digest.NETMerged pull request in dotnet/runtime digest.PR Digest.NET

Cloudflare Workers 向けアプリを C# で構築する ~ WASM Native AOT への道~

何縫ねの。(@nenoMake)さんによる、C#をCloudflare Workersで動かすまでのお話。

Cloudflare Workers 向けアプリを C# で構築する ~ WASM Native AOT への道~ | C# Kaigi 2026何縫ねの。による「Cloudflare Workers 向けアプリを C# で構築する ~ WASM Native AOT への道~」のセッション詳細です。csharpkaigi.net

近年ではC#でもNativeAOTでAOTコンパイルができるようになってきていますが、wasm対応に関してはかなり後手に回っている印象があります。wasmはここ最近の盛り上がりが素晴らしい技術で、ぜひC#にも追従してもらいたいところではありますが、現実は厳しい...

WASI周りに関しても、実はdotnetはPreview 1を捨ててPreview 2に賭ける選択をかなり早期からしていてなかなかロックです。が、現実問題としてComponent Modelをサポートするランタイムが少ないので、結果としてこの判断はどうなんだろうな...という気がしないでもないです。まあこれに関してはComponent Modelの異常な複雑さが悪い気がしますが...WASI Preview 1派の人間としてはかなり微妙な気持ちです。この辺りがいい感じになるといいですが...

C#でブラウザ(JavaScript Engine, HTML Renderer)を自作して学んだ高速化、効率的なメモリの使い方

@akeit0さんによるC#でブラウザを自作(!)したお話。

C#でブラウザを自作して学んだakeit0.github.io C#でブラウザ(JavaScript Engine, HTML Renderer)を自作して学んだ高速化、効率的なメモリの使い方 | C# Kaigi 2026akeit0による「C#でブラウザ(JavaScript Engine, HTML Renderer)を自作して学んだ高速化、効率的なメモリの使い方」のセッション詳細です。csharpkaigi.net

ブラウザを自作というところからして既に意味がわからないですが、それをC#で実装した、というのがすごい。発表スライドやデモが自作ブラウザ上でちゃんと動いていて、AIの力があるとはいえここまで実装できるんだ...という驚きがありました。すごい。

最速のread性能を目指すピュアC#製組み込みDB実装

@hadashiAさんによる、C#で組み込みDBを実装したお話。

最速のread性能を目指すピュアC#製組み込みDB実装 | C# Kaigi 2026ハダシAによる「最速のread性能を目指すピュアC#製組み込みDB実装」のセッション詳細です。csharpkaigi.net

ゲームなどでマスタデータを扱う際、有名な選択肢としてはMasterMemoryやSQLiteなどがありますが、どちらも割と一長一短で、意外と決定的な選択肢がないというのは感じていました。メモリ消費量を削るならSQLiteのような組み込みDBが欲しいところですが、ルックアップ速度や構築速度には難があり、またクライアント用途ではSQLは過剰なことが多く、単なるKVSで十分だな...と。

DryDBはその辺りの空白地帯を埋めるライブラリになっていってくれそうなので、今後に期待していきたいですね。DB実装の最適化周りも参考になる手法が多くて面白かったです。

まとめ

今までC#にはコミュニティ主導のカンファレンスのようなものが日本ではなかったので、今回のC# Kaigiを立ち上げていただいた意義はとても大きなものだと感じています。主催の皆様本当にありがとうございました。

C#というと、どうしてもレガシーなイメージやMicrosoft中心のイメージが強い...というか実際そういう面もないとは言い切れないので、コミュニティ主導のものが色々増えているのは嬉しいですね。来年も開催するとのことなので、是非また参加させていただきたいです!