decided to leave this as an answer instead of a comment: May wrote a book called classifying spaces and fibrations where he constructs such classifying spaces (you can get a copy of it for free on his website). In it, he makes a lot of use of the two-sided bar construction which is very general (works for any monoid and two spaces on which the monoid acts).
It seems like the natural setting for characteristic classes is really something like bundles or fibrations. PS the use of MSO and various grassmanians has more to do with classifying bundles than manifolds being locally euclidean, these spaces still tell you all about bundles over CW complexes or cobordism over CW complexes.
I get the impression that, as mentioned above, you look at induced maps in cohomology coming from the classifying maps of variously structured bundles or fibrations, once we have our classifying spaces we can look at the cohomology of them with respect to various different theories. so we get characteristic classes for every cohomology theory just as Jeff mentioned.
As far as relying on things that are locally euclidean, i think you have it a bit backwards. People care about manifolds first, we try to understand their geometry with vector bundles that live on them, to understand these we use an algebraic invariant. we can use any contravariant algebraic invariant to get some sort of characteristic class. This does not require any sort of locally euclidean condition.
I would love to understand the chern comment more. ps
ps sorry if overlaps too much with the above answers