The benefits of using IIS are that it provides automatic management of ASP.NET hosts, for example. it will recycle your AppDomain during downtime to recover server resources for unused web hosts, which also reduces the effects of memory leaks in your application code. It also imposes default restrictions for protection against DDDOS attacks and supports the ability to redeploy your application without downtime, that is, pending requests freeze until a new deployed application is launched.
Self-Host HttpListener - the main thing is that they work without a web server. It does not include any HTTP request restrictions, which is an advantage if you want to support downloading large files. They are harder to redeploy and there will be downtime during deployment.
source share