Specific context: I was looking for a .NET html parser, and google pointed me to What is the best way to parse html in C#?
Locked questions - especially technical locked questions such as the question above - are problematic because they grow stale yet still attract a lot of attention due to their historical votes. Even comments on the answers to that question are locked; so any user that accidentally visits a page like that has essentially been trapped; and the SO convention to avoid similar questions means the entire topic has lower-quality content due to one historical mistake.
I'm guessing, but the locking process looks like it was intended to prevent "bad" questions from gathering too much steam. It looks to me like that works for questions that are quite off-topic (e.g. "funny anecdotes"-style questions), but for technical questions it seems to me to actually do the reverse: it preserves the unhelpful content at the expense of new content.
For the specific question at hand What is the best way to parse html in C#? I'd propose it either get's deleted (at this point, probably best), or reopened (but the content is hopelessly outdated). In general, I wouldn't mind leaving the "delete" and "reopen" voting systems active for locked questions - if somebody actually looks at those.