Redundant Data

The 2 biggest culprits here are Cookies and View State (but this applies to all header variables).
If these are enabled by default for every element, each request header is going to grow to the point where it can easily dwarf the actual download size. Remember that a user's bandwidth for upload is usually smaller than for download.
Can you really justify hitting the server with hundreds of kilobytes of data just to display 1KB of information to the end user?
When the cookie crumbles
View State optimisation

Testing

The Net panel in the Firebug extension for Firefox, or Fiddler will show the traffic between the client and server.

Solution

You need to know your application and its data well enough to pass only the bare minimum needed between the client and server.