I've seen two constructions of these characteristic classes. The first comes from Milnor and Stasheff's book and involves the Thom isomorphism and (at least for me) the rather mysterious Steenrod squaring operations. The other construction comes from Hatchers Vector Bundles and K-Theory book. There Hatcher uses the Leray-Hirsh theorem to pick out specific classes for the tautological line bundle over $\mathbb{P}_{\mathbb{R}}^\infty$ for the Steifel-Whitney classes and does the analogous thing over $\mathbb{C}$ for the Chern classes. Does anyone know of a good way of comparing these constructions i.e. verifying that they pick out the same classes? Or is there a good source where this is discussed?