Various ways you can do it.
1. You can create a thread and set its property background. Start the thread when you need from your application.
2. You can use System.ComponentModel.BackgroundWorker class from your web application. It will take care all your background program running job.
3. You can create a method which run the program and execute that method asynchronously.
4. If you can run an executable from your web application then please read the article
Run .exe inside ASP.NET and catch exception using AppDomain[
^]