Shimming up a wooden subfloor can take out some valuable headroom. There are two things to consider here: the degree of unevenness of the concrete floor and the height of the basement itself. If the degree of unevenness is 2.5 cm (1 in.) or less, the best solution is to use self-leveling concrete. It is much thinner than regular concrete and its slippery texture can be easily trowled out to a featheredge, where regular concrete has to be spread thick across the entire floor. Self-leveling concrete can be applied thickly where necessary, but more importantly, a very thin layer will hold. This way the entire floor can be coated with new concrete without losing too much headroom. Once the self-leveling concrete is cured, plywood can be glued and/or screwed into the concrete with or without foam insulation. Over that you can install hardwood floors, vinyl, or carpeting.