Start here. This is the direct spoken answer to practice first.
Why this question matters
Large arrays, strings, lists, uploads, reports, and serialized payloads consume capacity quickly under concurrency and are collected with older heap generations. Bounded data flow matters more than the cost of one isolated allocation.
Large objects are expensive because they take more memory at once and are handled differently by the runtime. In .NET, objects above a certain size go to the Large Object Heap, which is collected with older generations. If an API repeatedly creates large byte arrays, strings, or lists, memory can spike and collections can become more costly. I would reduce the risk by streaming data, avoiding full in-memory copies, and reusing buffers carefully when the path is hot enough.