The comments on the question have been quite enlightening. I would've thought this a simpler question, so I'll risk posting the simple answer, but I owe credit to the commentators, so I'll make this a community wiki and encourage them to edit if they disagree with this answer as a summary.
Simple answer: Both are correct; Sentence B is more idiomatic.
Complex answer: see comments!