avalonia C# 发布文件大小对比 取代winform
2026年看,avalonia的发展势头挺强。
Avalonia UI Blog - News, Tutorials & Updates 官网🩷
github.com Semi Avalonia主题
跨平台:
拿一个“Hello World”级别的空窗口程序来横向对比,Qt 在体积控制上属于中等偏轻的水平,比 Electron 小很多,但通常比不上 Avalonia (NativeAOT)、Tauri 或 wxWidgets 这类极致轻量的框架。
各框架 Windows 下发布文件大小(未压缩,动态链接为主)大致如下:
-
Qt (C++):约 15MB ~ 40MB。用
windeployqt提取依赖后,一个最小 GUI 程序通常在 20MB 左右,若精细裁剪不需要的 DLL 并 7z 压缩,可压到 5MB ~ 6MB 上下。 -
Avalonia (NativeAOT):约 10MB ~ 40MB。开启 NativeAOT + 裁剪 + 压缩后,很多实测可以做到 10MB~20MB 出头,部分极限优化可到 10MB 级。
-
Tauri (Rust + WebView):约 4MB ~ 10MB。它复用系统自带 WebView,官方提到极简应用可小于 600KB,实际带点资源通常在几 MB 级。
-
Flutter (桌面):约 15MB ~ 40MB+。Release 包通常十几到几十 MB(含 Flutter 引擎/运行时)。
-
wxWidgets (C++ 静态链接):约 4MB ~ 8MB。静态编译后常是单文件几 MB 级,非常紧凑。
-
Electron:约 80MB ~ 150MB+。空项目打包就常超 100MB,因为它内嵌了整个 Chromium + Node.js。
简单总结:如果你追求“绿色小体积、拷到U盘换电脑就能跑”,Qt 不算大但也不是最小的;更小的一般是 Avalonia (NativeAOT)、Tauri、wxWidgets 这类;Electron 则是典型的“体积大户”。
本来想用avalonia取代winform或者wpf。测试结果:还是可以慢慢学习avalonia。
工作的环境:windows系统。
visual studio的preview功能需要登录,而且预览做的很烂,很难用,加上发布后文件大小,也不理想。看来C#的工具包括官方,从根上只是合格个人编程,企业内部编程,没有做到极致的感觉。
预览没有丝滑的感觉,勉强能用,个人感觉,从新手角度看。熟手可能可以不用预览。
也发展了很多年了。一直关注,今年打算用于工作。原因:IDE环境搭建和开发,开放效率都比较低,如果在windows平台,完全没必要用avalonia,直接用wpf。

注册:avalonia账号,订阅社区版本。昨天就花了2个小时。主要是绑定github账号遇到困难,因为网络不稳定,中国访问github,本身不稳定。注册github账号,做到一半工作,邮箱激活时,不能访问github。感觉很不爽。
How to bind to an observable | Avalonia Docs 开发手册
语法报错,预览加载不出来。avalonia没有grid



划重点 :winform 是否支持aot(.net10) 🩷
实际应用开发中使用一下,这个winform开发效率高很多。

新加项目什么功能都没有写,发布方式:依赖或Native AOT 的文件大小对比
2026-5-5 用的是最新的版本,基于 .net 10 和avalonia 12 。

1、Avalonia依赖发布 128MB


2、Native AOT发布文件大小 36.1MB
AOT 发布需要 在visual studio里面安装 C++ 那一套。


www.erwa.cn
二娃备忘

浙公网安备 33010602011771号