We propose a general model-free strategy for feedback control design of turbulent flows. This strategy called 'machine learning control' (MLC) is capable of exploiting nonlinear mechanisms in a systematic unsupervised manner. It relies on an evolutionary algorithm that is used to evolve an ensemble of feedback control laws until minimization of a targeted cost function. This methodology can be applied to any non-linear multiple-input multiple-output (MIMO) system to derive an optimal closed-loop control law. MLC is successfully applied to the stabilization of nonlinearly coupled oscillators exhibiting frequency cross-talk, to the maximization of the largest Lyapunov exponent of a forced Lorenz system, and to the mixing enhancement in an experimental mixing layer flow. We foresee numerous potential applications to most nonlinear MIMO control problems, particularly in experiments.