They all have their plus points and downsides.
Possible solutions to avoid II (bot registering)
II.1 - IP control (blacklisted IP or domain) - not suffisant
Good: Effective, plus external lists are updated frequently.
Bad: Possibility of false positives. Possible time delays introduced. Also, as some MX admins will attest to, could bite you in the arse if one of the sites decides to kill it's service. Some have been known to return a positive response to every request in such scenarios.
II.2 - User name and address analysis (mode difficult than for post)
What classifies as legitimate and not legitimate?
II.3 - Captcha, cf I.3
Good: Fairly effective.
Bad: Accessibilty. Plus, some captcha's are horrendous to use even when you have perfect vision.
II.4 - moderation (registration queing), cf I.4
Effective but resource, (human), intensive.
II.5 - Automatic deletion if no post during N days after registering)
Only viable if you allow guests free access to anything other than posting. If you require people to register to view certain areas, there's a good chance they'll only be registering to view content, and may never post.