what actually is happening to the website that is causing the whatever plugin to take up resources? Like the plugin is only some extra code, and it can't be that much, so what is actually happening?
is there some sort of wordpress process loop, that grows with size ALL your theme and plugin data in memory, so its applied to the site or something else?
A plugin with a few lines of code will have a very small impact on your website's performance.
The problem is those bigger, fancier plugins. Some of them have a crazy number of dependencies (I have seen plugins with 30-50k files in their dependencies). This is a big problem for IO. Then they will make multiple database calls per request, and everything must be processed by the CPU and loaded into memory. Very often, people who create those plugins don't really think about performance or optimal database design (especially indexes), so you end up with a plugin that, on its own, slows down the response by a few hundred ms. A few hundred ms doesn't sound bad until you have 5+ plugins like that. They alone will add 1+ sec to the page load.
This issue is not only with plugins.. themes do the same. For absolutely no reason, they end up making 100 database calls and some more strange stuff.
You can diagnose such issues with a profiling plugin that will show you the whole tree of function calls that your site makes on a page load. It will reveal a lot.
Then people host such websites on $2 a month shared hosting plans and wonder why their site loads slowly, and start saying that shared hosting is bad.
Also, a lot of people don't realize that even if their site gets, like, 100 visits a day from real people, they may still receive a couple of thousand requests from bots, which keeps their resource usage high.
So, it's a bit short sighted to say that shared hosting is bad just because their poorly set up site is slow on a budget hosting plan.
As I always like to say, you get what you pay for.