The form A is the more correct one: >He sometimes speaks Spanish, which I can't understand. The part of the sentence that follows the comma is a relative clause, connected to the *noun* "Spanish". In that clause "*I*" is the subject "*can't understand*" is the predicate. The **object** of that clause is actually "*Spanish*" represented by the relative pronoun "*which*". The pronoun migrates to the beginning of the clause and retains the status of the object. If we split the sentence into two, we get >He sometimes speaks Spanish. I can't understand Spanish. Now, why is "which language" incorrect? Simply put, **because it would be *redundant***. The word "Spanish" in the main clause *already has the meaning* "**language**". It's does *not* mean "architecture" or "history", so there is no need to repeat it. <hr> As far as "speaks ***in*** Spanish" versus "speaks Spanish", there is no difference.