You are quite right in most of what you wrote. But then it is a bit complicated. A covariance matrix is a matrix of covariances between all the variables in some multi-variate model, let's say the price of some 10 assets. Such matrix would be 10x10 matrix, with element in i-th row and j-th column being the covariange between i-th and j-th asset (Such matrix is symmetrical, because the covariance between i-th and j-th is the same as between j-th and i-th, and on the diagonal it has the variance of i-th asset).
So you have your assets, and you want to see if their prices are covariate. So you look at the prices for 100 days and count the covariance between each asset and put it all into a matrix. But that's not really good enough, because what you observed was just one, 100-day long realisation of a random process that generated the prices. So what you observed is just a sample, and you want to make some conclusions concerning the "population", so the real relations between the prices of the assets. The sample covariance matrix is an unbiased estimator, so whatever matrix you calculated on your sample you have no reason to believe it's actually smaller or larger then the true covariance. However, especially when you are dealing with a high-dimensional problem, so in this case you'd have relatively many assets to be evaluated with respect to number of observations, you run into some problems.
First of all, the covariance estimator has a HUGE variance, so even though you have no reason to believe that the true covariances are smaller or larger than what you calculated, you know that you are probably nowhere near the true covariance matrix.
Secondly, if number of assets is larger than the number of days you observed the pice the covariance matrix is singular, and you won't be able to calculate the inverse (the determinant of the matrix will be 0) - this is for reasons I have to find out yet.
But then if the number of assets is smaller, but still pretty large compared to the number of observations you end up with a highly biased inverse of the covariance matrix. If I understand correctly the numbers in the inverse tend to be larger than the true values.
I might have mixed up some stuff above though, I am just learning about it and I do find it pretty challenging to be honest.