I agree with Andrew.
As a side note, you're wasting memory by declaring tbldt equal to a new DataTable.
You then change where tbldt is pointing to without disposing of the other table which AFAIK will keep the new DataTable in memory and you'll not be able to use that block.
Since you're setting tbldt to a DataTable, you don't need to create it as a new object. You also don't need to tell it that it is a DataTable. DataSet.Tables[stringValue] returns a DataTable; This is the way to do it:
tbldt = xmlDatadocTimeTable.DataSet.Tables["TIMETABLES"];