Interesting question: generally either strategy is effective. If you build very few buildings, and upgrade them to their maximums, you will do well. Likewise, if you build a great many buildings and never upgrade them, you'll also do well (except in very small levels, and you need to make sure to path the aliens well).
My #1 upgrade criteria is coverage. How many aliens will this building be able to hit, if I upgrade it? You always want to get the most bang for your buck, so if you've got a building on a corner where the aliens have to traverse its entire firing arc, upgrade it. But if you have a building where the aliens only have to pass it once, leave it low.
The towers I always upgrade are Meteor Towers and Temporal Towers. Meteor towers are extremely effective, and their absurd range means one tower can usually cover the entire map. Temporal towers I upgrade because they're cheap for their effectiveness. If you upgrade your towers, it makes a lot of sense to invest in temporal towers.
The thing to remember about not upgrading, is that it allows you to put down many more towers, and, on large maps, this is critical. You want to shape the paths of the aliens to keep them on the map for as long as possible. This cannot be done if you upgrade your towers constantly...You won't have enough money.
Unless you're going for an achievement, you'll want a balance. You'll want to use low level towers to shape the path of the aliens so that they stay in range of your upgraded towers for as long as possible. If you can't shape their path, use temporal towers to slow them down, so as to keep them in range of the upgraded towers for as long as possible.