4 min read Sep 26, 2026

How to Choose the ASP.NET Version and App Pool Settings

Pick the right .NET runtime (v2.0 or v4.0) and pipeline mode for your site with Manage App Pool in StackCP, and recycle the pool after changes.

FimuroHost Team

FimuroHost Team

Technical Writer

Share Article

On Windows Hosting every website runs inside an IIS application pool. The pool decides which version of the .NET runtime (CLR) loads your code and how IIS passes requests to ASP.NET. If the pool doesn't match what your site was built for, the site fails before a single line of your code runs.

You control the pool yourself in StackCP with the Manage App Pool tool.

Supported ASP.NET versions

Windows Hosting supports the classic .NET Framework family: ASP.NET 2.0, 3.0, 3.5, 4.0, 4.5 and 4.8. The web servers run Windows Server with IIS 10. Framework versions share two runtimes, and the pool setting chooses between them:

Your site targets.NET runtime to select
.NET Framework 2.0, 3.0 or 3.5v2.0
.NET Framework 4.0, 4.5, 4.6.x, 4.7.x or 4.8v4.0
.NET Core, .NET 5 or later (e.g. .NET 8, 9, 10)Not supported on Windows Hosting; see Can I Run ASP.NET Core or .NET 8 on Windows Hosting?

There is no separate “4.8” option: every 4.x version runs on the v4.0 runtime, and the newest installed 4.x framework (4.8) is used automatically. The exact version your code compiles against is set by targetFramework in web.config:

<configuration>
  <system.web>
    <compilation targetFramework="4.8" />
    <httpRuntime targetFramework="4.8" />
  </system.web>
</configuration>

How do I know what my site targets?

  • Open the project in Visual Studio, right-click the project, choose Properties and look at Target framework.
  • Or open the site's web.config: a targetFramework="4.x" attribute means v4.0. No such attribute and references to System.Web.Extensions, Version=3.5.0.0 usually mean v2.0.
  • ASP.NET MVC 3 to 5 and Web API 2 always need v4.0.
  • Classic ASP (.asp pages) doesn't use .NET at all, so the runtime setting doesn't matter for it.

Change the runtime and pipeline mode

  1. Log in to your FimuroHost client area at https://app.fimurohost.com.
  2. Open Services and select your Windows Hosting plan (Starter, Premium or Business).
  3. Click Login to Control Panel. StackCP opens for that website, already signed in.
  4. In the Web Tools section, click Manage App Pool.
  5. Set .NET Runtime Version to v4.0 or v2.0 using the table above.
  6. Set Managed Pipeline Mode (explained below). Leave it on Integrated unless you have a reason to change it.
  7. Save the changes, then use the Recycle option on the same page so the pool restarts with the new settings.
  8. Reload your site. The first request after a recycle is slower because ASP.NET compiles and warms up.

A new pool may start on v2.0. If you host a modern 4.x site, switching to v4.0 is usually the first thing to do.

Integrated or Classic pipeline?

ModeUse it when
Integrated (recommended)Any site written for IIS 7 or later: MVC, Web API, Web Forms from the last 15 years. ASP.NET and IIS share one request pipeline, so modules and URL routing work for every request, including static files.
ClassicVery old applications written for IIS 6 that register modules and handlers only under <system.web> and break in Integrated mode.

In Integrated mode, IIS reads modules and handlers from <system.webServer>. If an old site still lists them under <system.web><httpModules> or <httpHandlers>, you will see HTTP 500.22 or 500.23. Either copy the entries into <system.webServer><modules> / <handlers>, or tell IIS to skip the check:

<system.webServer>
  <validation validateIntegratedModeConfiguration="false" />
</system.webServer>

Only fall back to Classic mode if that doesn't help.

When to recycle the pool

Recycling restarts your application and clears its in-memory cache. It is useful when:

  • you changed the runtime or pipeline setting;
  • you uploaded a new web.config or new DLLs and still see old behaviour;
  • the site has become stuck or very slow after an error.

Recycling signs out users whose sessions are stored in memory (the default InProc session mode), so do it at a quiet time on a busy site.

Common problems

  • “Unrecognized attribute ‘targetFramework’. Note that attribute names are case-sensitive.” The site is 4.x but the pool is on v2.0. Switch to v4.0 and recycle.
  • “Could not load file or assembly … or one of its dependencies”. A DLL is missing from bin, or it was built for a newer framework than the site targets. Re-publish and upload the whole bin folder.
  • MVC routes return 404 but static files work. The pool is in Classic mode or on v2.0. Use Integrated and v4.0.
  • HTTP 500.19 after changing settings. Usually a web.config error, not the pool. See Troubleshooting Common IIS Errors.

Need help?

If something doesn't work as described, open a support ticket from your client area or message us on WhatsApp at 01818160926. Tell us your domain name, which framework version your site targets and the exact error.

FimuroHost Team

Written by

FimuroHost Team

Technical Writer