I call the datable where the filter is already implemented. so why I 've to the filter in code?
I do not know if the Datatable is the bottleneck. You have not shared the code so we have no idea how you've implemented the Datatable. I assume the MVC View renders an entire HTML table.
The Datatable starts processing the HTML table after the browser loads the page and initializes the Datatable. Processing 10,000 rows it's going to take time. Logically reducing the number of records will also reduce the time it takes to process the HTML and why I recommend reducing the number of records returned from the service.
The browser's dev tools has diagnostics tools that shows how long it takes to fetch a Web API response and how long it takes the DataTable to process the HTML.
https://developer.chrome.com/docs/devtools/network/
https://developer.chrome.com/blog/devtools-timeline-now-providing-the-full-story/
With this information you should be able to find the bottleneck. Another troubleshooting option is disabling the DataTable library to see if the page is loads quicker. Then you'll know if the DataTable is the bottleneck or if you need to look elsewhere.
For example, if you find the time it takes to transfer the data over the wire is the bottleneck then you can look into caching the data. Caching might be a good idea regardless.
Cache in-memory in ASP.NET Core
Lastly, you'll want to read the Datatable support documentation and learn how to make AJAX request to populate the Datatable and control the data.
I have already explained to you that I am a beginner with c# with VS. please check my package with R.
What I've described above is basic troubleshooting that applies to every programming endeavor.