Querying DataColumnCollection with LINQ
How about:
var x = from c in dt.Columns.Cast<DataColumn>()
select c.ColumnName;
You could also use:
var x = from DataColumn c in myDataTable.Columns
select c.ColumnName
It will effectively do the same as Dave's code: "in a query expression, an explicitly typed iteration variable translates to an invocation of Cast(IEnumerable)", according to the Enumerable.Cast<TResult> Method
MSDN article.