Cohomology is a graded ring functor, homology is just a graded group functor. As groups cohomology does not give anything that homology does not already provide. Whatever geometric interpretation you have for homology would mostly probably work also for cohomology. But the multiplication in cohomology allows better differentiation between topological spaces which is not possible with homology. In this sense cohomology is a finer invariant. Specific examples can be found in the book of Spanier.

There are extraordinary cohomology theories, cobordism, K-theory, etc., which are also important. These satisfy most of the Eilenberg-Steenrod axioms.

Also cohomology can be generalized to algebraic geometry, which is very important. One cannot stress how important this is. Cohomology is the king there.

One helpful way of thinking of (integral) cohomology maybe the following. In homology, you look at sums of simplices in the topological space, upto boundaries. In cohomology, you have the dual scenario, ie you attach an integer to every simplex in the topological space, and make identifications upto coboundaries.