private void button1_Click(object sender, EventArgs e)
{
Point pos = new Point(0, 0);
foreach (var c in Controls)
if (c is Label)
if ((c as Label).Top > pos.Y)
pos = (c as Label).Location;
Label NewLabel = new Label();
pos.Y = pos.Y + NewLabel.Height;
NewLabel.Location = pos;
NewLabel.Text = "Another label";
Controls.Add(NewLabel);
}