I was looking for a job out of my country and through a recruiter I was able to move and get a job with double the salary I had in my hometown.
Three months has passed and due to a stupid policy I don't like I'm switching job again. A second recruiter found me a better position in another company, with a higher salary (which is already quite high).
Sure, most recruiters can get you good money at usually large companies that may or may not actually be a good fit for you. It kind of speaks for itself that you are leaving after a couple months.
I believe the best way to get a job you will love and get paid well to do it, is to aggressively pursue companies that you want to work for. This is really pretty easy nowadays, you find an email for the company and you write a great cover letter and you send it off with your resume. Doesn't matter if they have any openings or not. You should already know the companies products, how they work, contribute to relevant open source, etc.
My experience has been similar.
If you're a work-to-live type, they will get you better perks than you can, hands down, every time.
The "Why" is simple as well: they have far more data than you on what that company is paying for a given skill set, what the position is worth and (most importantly) what the projects you'll be working on are worth to the company.
It depends on the industry. Some industries definitely require a recruiter. You just need to talk to a lot of them until you find a good one; they're not all the same.