Are you creating a new instance of DataTable in every session?
If true, why you're using the static member in DataTable? I think that you're using the same datatable for every user.
Try to create a new instance of DataTable and disable the static member, It can solve the problem.
For this example, I changed the name of DataTable class, because it's the same that the original DataTable.
Ex:
class MyDataTable
{
public DataTable dt;
public DataTable()
{
dt = new DataTable();
dt.Columns.Add("Col1");
dtColumns.Add("Col2");
}
}
protected void btSave_Click()
{
MyDataTable dt = new MyDataTable();
MyDataTable.dt.Rows.Add(DataRows);
Session["DataTable"] = MyDataTable.dt;
Grid.DataSource = (DataTable)Session["DataTable"];
}