We've all dealt with it. The client who wants everything and who no matter what you do will always find some fault. You'll send perfectly qualified candidates across but you'll get limited feedback. Sometimes you just need to fire the client.
It happened with me a while back. I should have guessed straight away when the he called me out of the blue for the very first time saying that he didn't think I'd be able to meet his requirements. But I'm used to clients playing hard to get so eventually I got a very cautious buy-in.
From then on, nothing I did was right. Every time you matched the spec, the spec changed. After a month I realised that this wasn't going to work. It was a distraction from other clients and projects. It was time to call things off.
The phone call was tense. I remained polite and professional. The client did not. They tried to get me to reconsider and when it was clear I made up my mind there were vague inconsequential legal threats. The next day they suggested another role to work on which was politely declined. Free from the grasp of the unreasonable client I could focus on things which were productive.
We've all been there. But sometimes we need to realise that it's the right thing to do to fire a client. Give 100% to the clients you can deliver for. Don't be afraid to walk away from those for who you can't.