That is a little odd - double check you are running with the right code, and that the code is in the WebForm2.aspx file. I tried it here in my form load:
int c = Request.QueryString.Count;
TextBox1.Text = "Query: " + c;
if (c > 0)
{
TextBox1.Text += "\n" + Request.QueryString["hello"];
}
With a button:
protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("default.aspx?hello=\"Hi There\"&theEnd=Terminus");
}
It worked as expected.