Basic question: variable definition

I have a movieclip in the library called myMC, whose linked class is MyMC.

What is the difference between these two variable definitions:

 
var foo = new MyMC();

and

 
var foo:MyMC = new MovieClip();

Also, is one a better practice than the other?

Thanks!