An easy solution may be to just adjust your row count and index on any removal.
Try this:
int rowcount = datatabletest.Rows.Count;
for (int i = 0; i < rowcount; i++)
{
if (datatabletest.Rows[i]["Mcolumn1"].ToString().Trim() == "" || dtExport.Rows[i]["column2"].ToString().Trim() == "")
{
datatabletest.Rows.Remove(datatabletest.Rows[i]);
rowcount--;
i--;
}
}