  Gravitational lensing of the CMB is a valuable cosmological signal that
correlates to tracers of large-scale structure and acts as a important source
of confusion for primordial $B$-mode polarization. State-of-the-art lensing
reconstruction analyses use quadratic estimators, which are easily applicable
to data. However, these estimators are known to be suboptimal, in particular
for polarization, and large improvements are expected to be possible for high
signal-to-noise polarization experiments. We develop a method and numerical
code, $\rm{LensIt}$, that is able to find efficiently the most probable lensing
map, introducing no significant approximations to the lensed CMB likelihood,
and applicable to beamed and masked data with inhomogeneous noise. It works by
iteratively reconstructing the primordial unlensed CMB using a deflection
estimate and its inverse, and removing residual lensing from these maps with
quadratic estimator techniques. Roughly linear computational cost is maintained
due to fast convergence of iterative searches, combined with the local nature
of lensing. The method achieves the maximal improvement in signal to noise
expected from analytical considerations on the unmasked parts of the sky.
Delensing with this optimal map leads to forecast tensor-to-scalar ratio
parameter errors improved by a factor $\simeq 2 $ compared to the quadratic
estimator in a CMB stage IV configuration.
