Hola kikerv.
Pienso que al cerrar Form2 y querer refrescar el grid de Form1, lo único que hay que hacer es:
Código:
DataSet ds;
ds = DL.TraeDatos(Tipo);
DataGridView1.DataSource = ds.Tables[0];
De estra forma vuelves a recuperar todos los registros en su estado actual...
Esto es lo que te tarda tanto?