Paul Graham has a great essay on why open source is so successful, and in the process explains very clearly why I loathe jobs.
To me the most demoralizing aspect of the traditional office is that you're supposed to be there at certain times. There are usually a few people in a company who really have to, but the reason most employees work fixed hours is that the company can't measure their productivity.
The basic idea behind office hours is that if you can't make people work, you can at least prevent them from having fun. If employees have to be in the building a certain number of hours a day, and are forbidden to do non-work things while there, then they must be working. In theory. In practice they spend a lot of their time in a no-man's land, where they're neither working nor having fun.
I'll work my ass off for a customer, but I resent being told what to do by a boss.
I see the disadvantages of the employer-employee relationship because I've been on both sides of a better one: the investor-founder relationship. I wouldn't claim it's painless. When I was running a startup, the thought of our investors used to keep me up at night. And now that I'm an investor, the thought of our startups keeps me up at night. All the pain of whatever problem you're trying to solve is still there. But the pain hurts less when it isn't mixed with resentment.
I had the misfortune to participate in what amounted to a controlled experiment to prove that. After Yahoo bought our startup I went to work for them. I was doing exactly the same work, except with bosses. And to my horror I started acting like a child: I became sullen and rebellious. The situation pushed buttons I'd forgotten I had.
I've been self-employed for the last eight years, with occasional on-site contracts that to greater or lesser extents drove me up the wall. The clients I have had who have given me troubles have all been ones who treated me like an employee, and nothing makes me more resentful and more bullish than being treated like an employee. Taking you for granted indicates that the client believes that you are in a master-slave relationship, rather than a relationship of equals.
A good client is one who works with you, not one who expects you to work for them. A good client realises that, unless you have a specifically exclusive agreement, you have other clients and other responsibilities all of which are of equal importance. A good client wants you to honour your commitments to other people, because they recognise that that is part of what makes you a good consultant, rather than trying to persuade you to ditch your other commitments so that you can put them first. A good client is one you can collaborate with, learn from, teach, and with whom you can create a sort of creative, positive symbiotic relationship.
Good clients are rare.