dotnet / dotnet/runtime

Problem with runtime async in .NET 11 RC1: unexpectedly larger binary size

Closed
#133,954 4 comments 0 reactions 0 assignees View on GitHub
area-NativeAOT-coreclr
Dominant language
C#
Stars
18.3k
Forks
5.6k
PR merge metrics
PR metrics pending

Description

### Description

I have a [small program](https://github.com/HotCakeX/Harden-Windows-Security/tree/main/AppControl%20Manager/eXclude/DISMService) that uses .NET 11 RC1 which is controlled [here](https://github.com/HotCakeX/Harden-Windows-Security/blob/main/AppControl%20Manager/Directory.Build.props) and [here](https://github.com/HotCakeX/Harden-Windows-Security/blob/main/AppControl%20Manager/global.json)

Normally, the binary size is 1.55 MB, but after adding this line
```
$(Features);runtime-async=on
```
The binary size is 2.12 MB

Image


Image

### Reproduction Steps

1. Publish the program for X64 architecture
2. Observe the binary size with and without runtime async feature.

### Expected behavior

Binary size either remain the same, or slightly vary.

### Actual behavior

Binary size increased unexpectedly, rooting many new things.

### Regression?

_No response_

### Known Workarounds

_No response_

### Configuration

_No response_

### Other information

Visual Studio 2026 Insider
Windows 11 25H2

Contributor guide

Open the contributing guide

Research direction

Start with the linked AppControl Manager/eXclude/DISMService program, then inspect Directory.Build.props and global.json for the .NET 11 RC1 and runtime-async settings. Publish the program for x64 with and without the feature, compare binary size and rooted items, and determine why the additional roots appear or what expected behavior should be documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
backend
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.