Snob \snob\ , noun;
1. A person who imitates, cultivates, or slavishly admires social superiors and is condescending or overbearing to others
2. A person who believes himself or herself an expert or connoisseur in a given field and is condescending toward or disdainful of those who hold other opinions or have different tastes regarding this field.
Where exactly snob came from is unknown, but its evolution through English is more than interesting enough to make up for that. It is first attested in 1781 as "a shoemaker, a shoemaker's apprentice," but by 1796 it was already Cambridge University slang for "townsman, local merchant." In 1831 the sense "person of the ordinary or lower classes" was attested, and by 1843 the meaning "person who vulgarly apes his social superiors" had taken hold. Eventually the meaning was broadened to include "one who insists on his or her gentility" in addition to "one who aspires to gentility," and by 1911 the modern sense was in place.