Controlling the covariance (in additional to the mean) of a distribution is a first step of controlling the whole distribution of a general system, and for linear systems with Gaussian noise this all that is needed. Although steady-state covariance control has been around for more than two decades, finite-time covariance steering has only recently received attention in the literature, as part of the general topic of ``mass transfer'' theory. In this talk we will discuss some recent results on finite-time, minimum-energy control of the covariance for both linear and nonlinear systems. Disturbance feedback along with a simple relaxation results in a convex programming problem that can be solved efficiently. Probabilistic (chance) constraints can also be incorporated into the framework. The approach should be of interest for many applications where uncertainty is prevalent, and where there is an urgent need to avoid extensive Monte-Carlo simulations to quantify (and remedy) the effect of uncertainty. We demonstrate the approach in several applications, ranging from robot motion planning under uncertainty, the problem of pinpoint landing or autonomous air-taxis and during the powered descend guidance phase of an EDL, as well as for proximity operations in space during rendezvous maneuvers. The benefits of covariance steering for achieving better performance in tube-MPC and stochastic-MPC problems will also be discussed.