Using your examples. For the WTF thread, I would remove language tags.
For your ordinal numbers thread, I would leave a .net related tag, since the question was specific to .net and I might add tags for a specific language if there is a useful example shown in another language, besides the one mentioned in the question.
Perhaps if a basic concept is being demonstrated, an generic-algorithm tag of some sort could be applied in addition to the language tag.
The way I see it, if I have selected a language tag, I want to find language specific topics. In otherwords I want to see code for that language or it to be a question about that language.
@nickf (Reply to comment) I don't think it would cause redundancy, since I am advocating for tagging based on the content of the questions and answers. Psuedocode code be the generic-algorithm tag, I mentioned. As I laid it out, you could easily have an generic how do I do this, with examples in mutliple languages and a tag for each language or a how do I do this in a specific language question, tagged with the specific language tag and even possibly other language tags if good examples are shown in the thread. Tags should reflect the content regardless of the question and answers. It is an site ettiquette issue, not a tag issue if redundant language specific questions are frowned on.