In my viewpoint, the problem is that the corporate tax system doesn't line up with the financial reporting rules. So a company's net profit that they report to the street has no little bearing on the amount of tax they pay. This originates in that corporate tax grew out of personal tax rules, that most companies are private, and that every politician wants to encourage some random-ass behavior - either increasing gas production, increasing investment, random tax treaties as seen here etc. So the problem becomes that the taxation has become incredibly arbitrary. For instance, at the company I work at, an HVAC unit that is partially in the wall gets depreciated (which impacts total net income) depending on the portion in the wall versus out of the wall. This arbitrariness tends to encourage companies to try and avoid as much tax as possible via any legal (and sometimes illegal) means.
Honestly, when I was a young-in, tax avoidance (not evasion!) was heavily emphasized in my corporate tax classes - that makes sense as many would go to practice tax at a big accounting firm. Many of the big firms specialize in tax planning and avoidance which is why big companies hire them.
If I were design a corporate tax structure (and be the excellent benevolent dictator that I would be), there are a few ground rules: (1) The tax base should correspond to global, financial based accounting income (2) Income should have the same taxablity regardless of corporate vehicle - profits in a llc should taxed the same as those of a c-corp (3) Tax rates should be progressive with very small businesses paying very low tax rates to spur mom&pop type businesses as well as entrepreneurial activity (4) Simple incentives for hiring additional people, R&D activity, and investing in equipment (5) A partial credit for foreign taxes paid (to try to keep double taxation reigned in)
I've been thinking about this topic quite a bit. In Mexico, the law is that companies must pay out a certain portion of their profits to the employees. So the way that many of the larger companies avoid paying out this fee is that they form two umbrella corporations. The first corporation is the operating company that sells product and does all of the real work. The second is a kind of service company that hires almost all of the employees and essentially rents them to the operating company at a minimal margin. Since the most of the employees work for the services company, they are only entitled to a portion of the profits of the service company which has very little profit. Thus the law is circumvented. See pages 16 and 17 here http://www.lcilaw.com/QuickGuideMexico.pdf It's frustrating to me that the law is dodged in this fashion given the powerful impact that the law could have and was intended to have for employees in Mexico.
(This is much longer than I intended to go on - tax and government regulation are areas that I'm rather passionate about)