There are many studies where researchers are interested in estimating average treatment effects and are willing to rely on the unconfoundedness assumption, which requires that treatment assignment is as good as random conditional on pre-treatment variables. The unconfoundedness assumption is often more plausible if a large number of pre-treatment variables are included in the analysis, but this can worsen the finite sample properties of existing approaches to estimation. In particular, existing methods do not handle well the case where the model for the propensity score (that is, the model relating pre-treatment variables to treatment assignment) is not sparse. In this paper, we propose a new method for estimating average treatment effects in high dimensions that combines balancing weights and regression adjustments. We show that our estimator achieves the semi-parametric efficiency bound for estimating average treatment effects without requiring any modeling assumptions on the propensity score. The result relies on two key assumptions, namely overlap (that is, all units have a propensity score that is bounded away from 0 and 1), and sparsity of the model relating pre-treatment variables to outcomes.