The following code can be used to filter the data as required
void Main()
{
DataTable timeData = new DataTable();
timeData.Columns.Add("Id",typeof(int),null);
timeData.Columns.Add("OpeningTime",typeof(TimeSpan),null);
timeData.Columns.Add("ClosingTime",typeof(TimeSpan),null);
timeData.Rows.Add(1,new TimeSpan(8,45,0),new TimeSpan(20,0,0));
timeData.Rows.Add(2,new TimeSpan(9,0,0),new TimeSpan(19,30,0));
timeData.Rows.Add(3,new TimeSpan(10,0,0),new TimeSpan(21,0,0));
timeData.Rows.Add(4,new TimeSpan(9,45,0),new TimeSpan(20,30,0));
timeData.Rows.Add(5,new TimeSpan(9,15,0),new TimeSpan(22,0,0));
TimeSpan openingTime = new TimeSpan(9,0,0);
TimeSpan closingTime = new TimeSpan(21,0,0);
var enclosedTime = timeData.AsEnumerable().Where (
d => d.Field<timespan>("OpeningTime").CompareTo(openingTime) >=0
&& d.Field<timespan>("ClosingTime").CompareTo(closingTime) >=0)
.Select (d => d).CopyToDataTable();
}