Converting DataTable to List of class
I created an extension method for DataTable to convert them into a List&lt;T&gt;

public static class Helper
{
    /// &lt;summary&gt;
    /// Converts a DataTable to a list with generic objects
    /// &lt;/summary&gt;
    /// &lt;typeparam name="T"&gt;Generic object&lt;/typeparam&gt;
    /// &lt;param name="table"&gt;DataTable&lt;/param&gt;
    /// &lt;returns&gt;List with generic objects&lt;/returns&gt;
    public static List&lt;T&gt; DataTableToList&lt;T&gt;(this DataTable table) where T : class, new()
    {
        try
        {
            List&lt;T&gt; list = new List&lt;T&gt;();

            foreach (var row in table.AsEnumerable())
            {
                T obj = new T();

                foreach (var prop in obj.GetType().GetProperties())
                {
                    try
                    {
                        PropertyInfo propertyInfo = obj.GetType().GetProperty(prop.Name);
                        propertyInfo.SetValue(obj, Convert.ChangeType(row[prop.Name], propertyInfo.PropertyType), null);
                    }
                    catch
                    {
                        continue;
                    }
                }

                list.Add(obj);
            }

            return list;
        }
        catch
        {
            return null;
        }
    }
}


Example:

DataTable dtTable = GetEmployeeDataTable();
List&lt;Employee&gt; employeeList = dtTable.DataTableToList&lt;Employee&gt;();