An object-oriented programming language developed by Microsoft that can be used in .NET.
DataReader is for reading rows from a data source such as a database. It returns an unbuffered, forward-only stream, and rows are read by calling ExecuteReader() and then Read().
If the goal is to read a text file line by line in VB, LineInput exists, but it is provided for backward compatibility and may affect performance. For non-legacy applications, My.Computer.FileSystem provides better performance.
If the goal is to read only as much of a file as needed, File.ReadLines is the better fit. It returns the lines of a file as IEnumerable<string>, and enumeration can begin before the whole collection is returned. That makes it more efficient than reading the entire file first when working with large files.