Covariance matrices play a central role in statistical analysis. A large collection of fundamental statistical methods require the estimation of covariance matrices. With the emergence of high dimensional data from modern technologies, estimating large scale covariance matrices as well as their inverse is becoming a crucial problem in many fields. In this talk we give some theories to unveil the precision to which (inverse) covariance matrices can be estimated and to develop general methodologies for optimal estimation of the (inverse) covariance matrices under various settings.