 <p>This is saying, essentially, "For each line in the file, split the line on the tab character into an array of strings, then create an array of those arrays (such that each element in the returned array is an array)"</p> <p>The <code>Select</code> function takes an Enumerable of something and applies a function to each item, producing 1 output value for each input value. In other programming languages this is called a Map or a Projection.</p> <p>The => indicates a lambda expression which is compiled into a delegate function. It takes an argument called "line", whose type is inferred by the usage (because <code>ReadLines</code> returns an IEnumerable of Strings, <code>line</code> is of type String).</p> <p>The lambda's body has an implied return type of the value resulting from the last call (the call to <code>Split</code>). Thus, the line says "run this lambda on each line".</p> <p>Finally, the call to <code>.ToArray</code> at the end (outside of the lambda) converts the <code>IEnumerable&lt;String[]&gt;</code> returned by <code>Select</code> into an array of arrays (<code>String[][]</code>).</p>