Categorifying the concept of topological group, one obtains the notion of a "topological 2-group". This in turn allows a theory of "principal 2-bundles" generalizing the usual theory of principal bundles. It is well known that under mild conditions on a topological group G and a space Al, principal G -bundles over M are classified by either the Cech cohomology H-1(M,G) or the set of homotopy classes [M, BG], where BG is the classifying space of G. Here we review work by Bartels, Jufeo, Baas Bokstedt Kro, and others generalizing this result to topological 2-groups and even topological 2-categories. We explain various viewpoints on topological 2-groups and the Cech cohomology Hl(M,g) with coefficients in a topological 2-group g, also known as "nonabelian cohomology". Then we give an elementary proof that under mild conditions on M and g there is a bijection H-1(M,G) congruent to [M, B|G|] where B|G| is the classifying space of the geometric realization of the nerve of Q. Applying this result to the "string 2-group" String(G) of a simply-connected compact simple Lie group G, it follows that principal String(G)-2-bundles have rational characteristic classes coming from elements of H*(BG, Q)/< c >, where c is any generator of H-4(BG, Q).