I couldn't understand the need of var keyword in C# 3.0.so you don't understand anonymous types and LINQ
When the type safty of visual studio and the compiler keeps track of all of this for you why not use it like you could a loosely typed system. It can make refactoring in the future much easier. Also I know there are some times such as your "var nonObviousType = 999999999;" example when you should probably declare the type to help out the compiler.
Often I wish you could do this instead: ReallyLongTypeName myVariable = new ();
BFree: I think VS effectively does that.