I've found that outsourcing QA work can be effective, if your expectations are realistic and you have a fairly hands-on approach to managing the effort.
I was responsible for a pilot project at Microsoft to take advantage of 3rd party vendors in China for localization testing. In order to make this work, I conducted in-person training and post mortems every three months. I did pre-triaging of bugs that came in to avoid distracting our "war team" with poorly written or inadequately regressed bug reports. It took some effort, but we got very good value out of this process; the trained people rotated out into different teams as the effort expanded. Some of the better people in that first group that I trained are actually now doing executive-level and business development work. This effort was very successful, and I'd do it again in a heartbeat if I were in a position to start a similar project in my current situation.
On the other hand, I've also worked for a company which outsourced some QA effort to India. Their approach was to provide a vague guideline for what needed to be tested, a requirement that the test automation be written into Java, and no dedicated internal resource was assigned to manage the effort. Essentially, they hired the company and "threw the task over the wall." They got terrible, unmaintainable code with lots of static member variables, tight coupling, temporal issues, and a ridiculous rate of (irreproducible) false failures. We first spent about a month or two trying to salvage the code, but we ultimately had to throw away everything they did, and it cost a lot of money.
So, no matter how your vendor pitches it, don't think that outsourcing QA will completely free you from managing the effort. What it should do is provide an effort multiplier, if you manage it correctly. Expect to dedicate at least one full time person inside your organization, preferably someone with QA and Project Management experience.
You may save money over hiring an equivalent team internally, but that's not guaranteed. You will be insulated from the effort of qualifying talent and hiring and firing people, which is worth quite a lot if your vendor finds quality people. But you will have a fair amount of hands-on work to do. The best thing about outsourcing is that you can scale up or down the effort fairly quickly based on the state of your project. If there's not much to test, you're not paying as much.
Given the opportunity, I'd generally rather hire people committed to the success of our company to do QA. But if you don't have the internal expertise to do that hiring, or the budget for a large internal full-time team, it's definitely worth considering.
Footnote: The country that our vendors were in wasn't a major factor in the success or failure of our projects; the level of involvement in managing the effort on our side was the critical factor.