When to use a plugin vs theme component?

No, plugins are only required if you intend to change the back-end.

If it’s just a local change you can go to Admin → Customize → Theme and enter changes into a new Theme Component, then add it to your current Theme.

Take a look at theme developers - Discourse Meta, especially: