You're coding in .Net environment :
The Memory is often managed and auto-clean ( finalize function in class / dispose for lots of components / and GC as big helper ).
As I told you, you evolve in 'network buffer' for request / web server.
The HttpRequestStreamReader and streamreader are both stream, sure.
a streamreader can handle the http one.
but for simple use, the dedicated class HttpRequestStreamReader offers you dedicated features in its class.
that the point,
it's not for "handle level" in .Net, it's for "facilities and uses, and features".
StreamReader is from "system.IO"
HttpRequestStreamReader is part of ASP namespace, but a TextStream ( reader )
HttpRequestStreamReader Class (Microsoft.AspNetCore.WebUtilities) | Microsoft Docs[
^]