in general linux performs as well or better than windows. but any library (nuget) that uses native resources may not be ported to Linux as well. You will need to track down the offending code as it appears you have a memory leak. see this thread:
https://github.com/dotnet/runtime/issues/96091
note: .net 6 supports ends Nov 12 (< 5 weeks), so you might want to upgrade to .net 8 and lastest packages and do the test again.