Someone who gives unsolicited explanations in a condescending way

Usage in sentence:

Person A: Ooh - look at that crow!

Person B: Well, actually, as someone who is a scientist who studies crows, I am telling you, specifically, in science, no one calls jackdaws crows. They're not the same thing. If you're saying "crow family" you're referring to the taxonomic grouping of Corvidae, which includes things from nutcrackers to blue jays to ravens. It's not one or the other, that's not how taxonomy works.

Person A: Are you always such an XXX?

"Pedant" is close, but not quite.

It would be a mix of "know-it-all", "condescending" and "arrogant".


Solution 1:

Pedant fits your example sentence. Wikipedia says:

A pedant is a person who is excessively concerned with formalism, accuracy, and precision, or one who makes an ostentatious and arrogant show of learning............The term in English is typically used with a negative connotation to refer to someone who is over-concerned with minutiae and whose tone is condescending.

The OP might also say:

Are you always so pedantic?

Solution 2:

A didact.

noun
1. a didactic person; one overinclined to instruct others.

[dictionary.com]