Ok, let me try to provide some answers:
- No, you do not need to have a C# application in order to implement an HTTPS server. The server can run all by itself in IIS regardless of whether you have any application in any language. You could, for instance, simply copy some files to the IIS site and then access these files from a browser. You may, if you wish, access the server from a C# application, but you don't have to. You may also implement some code that runs inside the server in C# or another language, but the server does not require you to do it.
- If you do not want to use IIS, you can also implement your own server inside your own application. The simplest way to do this from C# is to user OWIN with the .Net Framework. OR write your application in .Net Core and let the Core libraries provide the server for you. The former requires you to manually add the references to the project and then add some starter code. It is all explained with examples in Microsoft Learn. The latter is mostly automated (but you still have to write the code).