Start here. This is the direct spoken answer to practice first.
Overview
@defer can remove code from the initial bundle, but the trigger decides when users pay the loading and rendering cost.
I use @defer for code that is not required for the initial view or primary interaction, such as a heavy editor or below-the-fold panel. I choose a trigger that matches user intent, provide a stable placeholder and useful loading or error state, and measure the result. I do not defer content whose absence would make the page incomplete or inaccessible.