Il ViewState è un oggetto molto importante per chi sviluppa applicazioni web ASP.NET; esso infatti tiene traccia, con una stringa codificata di caratteri, dello stato della pagina dopo la sua ultima elaborazione lato server (per esempio dopo un postback), in modo tale da permettere allo sviluppatore di utilizzare delle proprietà dei web controls presenti nella pagina, prima che la pagina stessa sia inviata nuovamente al server.
La stringa di caratteri codificata, viene inserita in ogni pagina, all'interno di un campo hidden (nascosto), pronta ad essere decodificata e rielaborata una volta effettuato un postback.
Il campo hidden è stato chiamato __VIEWSTATE, e ha questa forma:

<input type="hidden" name="__VIEWSTATE" value="dDw4OTE1NzQzMjt0PDtsPGk8M ..." />

Capirete che in pagine con parecchi web controls, la stringa rappresentante il viewstate inizierà ad avere una certa lunghezza, andando cosi' ad influire pesantemente nelle prestazioni della pagina.
E' buon uso quindi cercare di utilizzare il ViewState solamente nella pagine web in cui ne abbiamo effettivamente il bisogno.
Il ViewSate, di default, è abilitato in ogni pagina, ma è possibile disabilitarlo o includendo l'attributo EnableViewState="false" nella direttiva @Page della pagina scelta

<%@ Page language="c#" Codebehind="prova.aspx.cs"
AutoEventWireup="false" Inherits="Peppe.prova" EnableViewState="false" %>

oppure è possibile decidere di togliere il viewstate da tutte le pagine della propria applicazione web, inserendo nel web.config

<pages buffer="true"

enableSessionState="true"
enableViewState="false"
enableViewStatMac="false"
/>

Inoltre, se per esempio avete una pagina dove utilizzate in concreto il ViewState, e dove sono presenti altri web controls che invece non ne hanno bisogno, basterà disabilitare l'uso del ViewState solamente per quei singoli controlli, dando il valore True alla proprietà EnableViewState.

Una volta presi tutti questi accorgimenti, controllate pure il peso della pagina con il viewstate e senza, per verificarne il reale abbassamento, ed un successivo aumento delle prestazioni.