What are the best practices for improving the performance of an ASP.NET Core Web API when handling a large number of concurrent requests?
#fnf
Loading
What are the best practices for improving the performance of an ASP.NET Core Web API when handling a large number of concurrent requests?
#fnf
Know the answer? Post it — somebody with the same question will find it here.
Sign in to answer this question
It is the same account you read, post and publish with — and you will come straight back to this page.
Cynthia SathuragiriPosted Aug 14, 2026, 5:26 AM
A few key practices I would follow for improving ASP.NET Core Web API performance under high concurrent load are:
Use async/await for all I/O-bound operations and avoid .Result or .Wait().
Optimize EF Core queries using AsNoTracking(), projections, proper indexing, and pagination. Avoid N+1 queries and unnecessary Include() calls.
Implement caching for frequently accessed, relatively static data using IMemoryCache or distributed caching such as Redis.
Use IHttpClientFactory for external HTTP calls to avoid connection-management issues.
Keep controllers lightweight and move business logic to service layers.
Avoid loading large datasets into memory; apply filtering, sorting, and pagination at the database level.
For long-running or CPU-intensive operations, move the work to background processing instead of keeping HTTP requests open.
Reduce response payload sizes and use compression where appropriate.
Monitor database connection pools, thread-pool starvation, CPU, memory, GC, and API response times.
Most importantly, perform realistic load testing to identify the actual bottleneck before optimizing.
In my experience, under high concurrency the bottleneck is often not the controller itself, but database queries, external service calls, connection exhaustion, or thread-pool starvation. So I would measure first, identify the bottleneck, optimize it, and then load-test again.
Bohdan StupakPosted Aug 12, 2026, 1:58 PM
Apart from what is already said, it's is worth mentioning horizontal/vertical scaling of API server instances.
Also, apart from improving the performance of API it is worth noting that API should handle too many requests gracefully. This is what resilience techniques are for
Snesh PrajapatiPosted Aug 4, 2026, 4:27 AM
The following points can help improve the performance of an ASP.NET Core Web API.
Minimize Middleware because every middleware executes for every request.
Use Asnyc\await
Write efficient database queries, use filtering, pagination..
Use DTO classes to avoid serializing entire entity graphs
Add caching to eliminate repeated expensive operations
There are many other points you can consider to improve the performance; please go through the following link to get more ideas.https://www.c-sharpcorner.com/blogs/improving-api-performance-in-net-core