I personally think it is bad to use var everywhere. There are three types of var usage
1 mandatory - sometimes you have to use var, such as for anonymous types. This is fine.
2 to tidy the code - some linq statements, like grouping, return some pretty complicated and ugly types and you might want to use var to simplify the code. This is usually ok
3 everywhere else - normally bad.
The problem with var everywhere is you don't know what types are just by looking at the code, which I think is bad.
var name = GetName()
What's name? A string? A Name class?
var name = GetNames()
What's name? Is it IEnumerable<string>? Is it a List? I might treat the data differently depending on if it is IEnumerable or List. Sure you can easily find out the type, but you can't tell just by looking.
The other issue isn't exactly related to var itself, but I think for people that are starting coding, or don't yet fully understand types and the framework, var can almost prevent people fully understand types. More junior coders seem to think there is something magical about var and it is something that means types no longer exist, everything is the same. Look at any question involving casting\type mismatches and you can guarantee the person is using var.