If you wait until all possible bugs are found, you'll wait forever. Voltaire wrote it first:
Le mieux est l'ennemi du bien.
(translated: “The best is the enemy of the good.”)
It means that seeking to create perfection means you'll never actually produce anything good at all; you'll continually be not finished because you're not quite perfect. You must stop and release. Since you know you're not actually attempting to produce perfection (merely good enough will do; balance the cost of not fixing a bug against the cost of not releasing because of the additional delay) why fret that things aren't perfect?
What tends to happen is that people produce alpha versions of software while they're working on the major features; these may well be internal only, or only released to a very select group of external people, and will probably be rather broken in other ways. Then, once the major things are in place and roughly working together, a beta is created and sent to a larger group of people. This is where QA really gets their teeth in, ferreting out all sorts of minor bugs, and where the people who are very keen on getting the new features — enough to tolerate the fact that the software is known to be buggy — can get early access. There may even be a few beta cycles, as bugs are ironed out (including eventually all the show-stoppers, hopefully).
Once the cost of fixing bugs is exceeding the cost of leaving them unfixed, it's time for the full release. If you don't like bugs, that's what you should wait for. (The really conservative will even wait for the first few official patches to come out, so that even really obscure stuff gets squelched.) But some people simply are much keener on getting at those features: they're the ones that betas are aimed at (and alphas are usually for people who are pretty close to the development process only, as they're usually missing key functionality).
Agile processes try to shorten things by keeping the amount of time that things are broken really limited and putting the customer close to the development, but it's not suited to all software. Anything aimed at having a really wide release (e.g., commercial products) simply cannot have all the customers there; that forces the sort of release strategy outlined above.