開発環境:
Windows10 Pro
Microsoft Visual Studio Community 2019
開発言語:
B.NET FrameWork4.7.2

Microsoft.VisualBasic.FileIO.TextFieldParserを使うと簡素なコードでCSVの読み込み処理を書くことができます。

VB専用ですが、C#でもUsingで指定しておけば使用できます。

VBの場合はFileIOからの指定でOKです。

例)

'【DATAテーブルの作成】
Dim dtTable As New DataTable

'【ファイルをループしてテーブルにSetする】
Using textParser As New FileIO.TextFieldParser("ファイル名", System.Text.Encoding.GetEncoding("Shift_JIS"))
	'CSVファイル 
    textParser.TextFieldType = FileIO.FieldType.Delimited
	'区切り文字 
    textParser.SetDelimiters(",")
	'ファイルの終端までループ 
    Dim iCnt As Integer = 0
    While Not textParser.EndOfData
    	'1行読み込み 
        Dim Dtrow As String() = textParser.ReadFields()
        Dim ColCnt = 0
        If iCnt = 0 Then
        	dtTable.Clear()
            For Each Col As String In Dtrow
            	dtTable.Columns.Add(Col, GetType(System.String))
            Next
      	Else
        	Dim mRow As DataRow = dtTable.NewRow
            Dim rCnt As Integer = 0
            For Each Col As String In Dtrow
            	mRow.Item(rCnt) = Col
                rCnt += 1
           	Next
            dtTable.Rows.Add(mRow)
      	End If
        iCnt += 1
  	End While
End Using

例ではDataTableに読み込んでいます。
1度目のループでは項目名を所得して、
2度目以降のループでデータを読み込んでいます。
※1行目が項目名の行である必要があります。