I've read through the classic Chern-Simons paper where they introduce the Chern-Simons forms. These are differential forms whose exterior derivative gives you the characteristic forms for any given choice of invariant polynomial, and the construction of Chern-Simons forms is a functor on the category of principal bundles with connection.


So somehow this construction has to do with differential cohomology and differential characters. Admittedly, I only have a very vague understanding of differential characters and differential cohomology. I have skimmed through the Cheeger-Simons paper but the big idea hasn't popped out at me yet.


Also, I am interested in invariants of principal bundles with connection, but from the [nlab page](https://ncatlab.org/nlab/show/ordinary+differential+cohomology) on the topic it seems that differential cohomology has to do with circle bundles with connection. Is this indeed the case? Or is it useful for principal bundles with other sorts of structure groups?


Essentially, I'm hoping to see the big-picture before I invest myself in learning differential cohomology and differential characters.



Differential characters, Chern-Simons forms, and differential cohomology
The simple beginning of this story is that the curvature of a $\mathrm{U}(1)$ connection does not tell you the bundle it's a connection on — not even up to isomorphism. Differential cohomology is designed to fix this 'problem'. 


Say we have a connection $A$ on a $\mathrm{U}(1)$ bundle $P$ over a smooth manifold $M$. 


The curvature of this connection is a closed 2-form $F$ on $M$, so it gives an element $[F]$ of the 2nd deRham cohomology of $M$, or $H^2(M,\mathbb{R})$. But we need more than $[F]$, in general, to know the bundle $P$ up to isomorphism. And we need more than $F$ to know the bundle-connection pair $(P,A)$ up to isomorphism.


If all we wanted was to know the bundle up to isomorphism, we'd just need an element of $H^2(M,\mathbb{Z})$. There's a map from $H^2(M,\mathbb{Z}) \to H^2(M, \mathbb{R})$, but it's not always injective. So, in some cases $[F] \in H^2(M,\mathbb{R})$ will be in the image of several different elements of $H^2(M,\mathbb{Z})$. In these cases, $[F]$ doesn't determine the bundle $P$ up to isomorphism. And in these cases, it turns out that nonisomorphic bundle-connection pairs will have the same 2-form $F$ as the curvature of the connection.


This is the 'problem'. To deal with it, we would like some sort of cohomology such that an element of the 2nd cohomology of $M$ determines a $\mathrm{U}(1)$ bundle with connection, up to isomorphism. This is one of the things that differential cohomology does. Very roughly speaking, an element of the 2nd differential cohomology group $H\_{\mathrm{diff}}(M)$ combines the information of a closed 2-form on $M$ and an element of $H^2(M,\mathbb{Z})$ [in a nice way](https://ncatlab.org/nlab/show/ordinary+differential+cohomology).


But this is just the start of the story. There are also versions good for higher cohomology, related to higher analogues of $\mathrm{U}(1)$ bundles, like 'gerbes'.
There are also versions for nonabelian groups replacing $\mathrm{U}(1)$. And putting these generalizations together, there are versions for higher analogues of nonabelian groups. The nLab is a great place to start learning about all this stuff. For a really big version of the 'big picture' you seek, try this:


* Urs Schreiber, [Differential cohomology in a cohesive $\infty$-topos](http://arxiv.org/abs/1310.7930).


