It's time to return to the roots, to the ~~C programming language~~ CPU specific Assembly language
Fix'd
Joke aside, the answer to most of your questions is "because people with money said so". As to why programs lag despite computers being more powerful, because shitty programmers and a general "BLA is cheap" mentality, where BLA is processing cycles, RAM, storage, network speed, etc. Funnily enough, the "program using everything the hardware offers" is an old complaint, as even Unix was considered a cancer during the 1980s, mostly by people whose computers did nothing but run very specific LISP code.
C is not without its flaws, just like every other language. Teaching it over whatever the market desires may not necessarily make better programmers, nor better programs for that matter.
I look at how programming has changed (...) it was all for the benefit of giant companies or the government.
Giant companies first, govt second and as a side effect, as govts tend to be veeery slow in adopting certain computer related stuff. I suspect the main exception would be intelligence/espionage agencies, but they also much prefer others doing shit programming, makes their job easier.
Like I said, a lot of people going into gamedev don't want to learn, they want to make. Good luck convincing those people that learning about rendering pipelines and implementing one themselves is a good idea and use of their time. The most common answers you'll get are