Hi,
if your form 1 is the main form you cannot close the main form, instead you can hide them using the ".Hide()" call. This is because if you close your main form, you will lose some context of your application.
However, in your code
form2 f2=new form2();
f2.show();
form1 f1=new form1();
f1.close();
is pointless, you haven't showed your form 1 in the first place to close.
Regards
Jegan