You do not need to store Textbox value in Application variable.
could be used to minimize code on Default2 page.
Required code on Default3 page.
TextBox1.Text = ((TextBox) PreviousPage.FindControl("txtname")).Text;
but again in above code you need checking for txtname
existance. So, its not always possible to minimize number of lines. but the important thing is the correct behavior then optimization.
Hope this will help you.