What should I study in order to understand cohomology group? In this mathoverflow question, the comment by Mikhail Katz wrote something like that:

To give an unrealistic example, if there were a natural cohomology
  group that gave an obstruction to finding ψ, that would be a
  conceptual explanation.

My question is, what should I study in order to understand what "cohomology group" is?
I know point-set topology and algebra (those related to group, ring, integral domain, field, etc. but not beyond) in my university study.
What book should I study in order to understand what he is talking about?
 A: This is really more of a long comment than an answer: There are many co/homology theories dedicated to understanding different phenomena in algebra and topology. They are all regarded as different theories because the concept of co/homology was axiomatized in Eilenberg and Steenrod's book. In some sense, all these theories associate a chain complex to a topological object, and study the failure of that sequence to be exact. The exact thing that's measured depends on the theory. This is sort of what is meant in your quote - if a particular co/homology group is $0$, it means some exactness holds. Co/homology is the 'obstruction' to exactness, and often times particular co/homology classes are obstructions to particular constructions being carried out, or maps being defined.
I think most people start with simplicial and singular homology, which are treated in Hatcher, and this is regarded as canonical, and so might be a good place to start. If nothing else, this is a good place to start. There's also a very friendly book by Vick that you could look at.
In order to elaborate on just how many theories are possibly out there, let me tell you some places you can learn some of these things, depending on what you may want to see. I learned the simplicial theory in undergrad from the undergrad book 'Topology of Surfaces' by Kinsey, and L.S. Pontryagin's 'Introduction to Combinatorial Topology,' and after that, went to Bredon, which fits my interests (in geometry) a little better. The cohomology theories I use the most are De Rham and Dolbeault cohomology, which are not necessarily what most people in algebraic topology use. 
Bott and Tu's book 'Differential Forms in Algebraic Topology,' is a reasonable follow up to this, along with something for characteristic classes. I learned about the Dolbeault theory from Voisin's Hodge theory book. An easy introduction to sheaf cohomology can be found in Forester's Riemann surface book, and more advanced stuff in Hartshorne's well-known book on algebraic geometry.
There are many other cohomology theories I hear people in my topology department talk about that I could not do justice to or give you any serious recommendations for. 
