In .NET framework, you can make a single .EXE file that will run from the command line without having any extra config files (and if using ILMerge, you can put
The feature is enabled by the usage of the following property in your project file (.csproj):
true
There are other options as well, such as packaging the pdb into the bundle, or leaving certain files out.
Documentation can be found here: https://docs.microsoft.com/en-us/dotnet/core/deploying/#publish-self-contained
Combine this technique with the Self Contained Deployment workflow, you can get a true "it just works" experience for your user, they don't even have to install the .NET Core runtime for your app to run.
I am currently deploying applications to my clients as single .exe files.
Read more about that here: https://docs.microsoft.com/en-us/dotnet/core/deploying/#self-contained-deployments-scd