Используйте список вместо массива.
Dim langs As New List(Of String())()
While reader.Read()
Dim temp(1) As String
temp(0) = "tblLang" & reader.Item(0)
temp(1) = reader.Item(1)
langs.Add(temp)
End While
.Net различает типы массивов и типов коллекций.Предполагается, что типы массивов имеют фиксированные размеры, поэтому добавление в конец, как вы хотите, не работает хорошо.Коллекции должны быть более гибкими.
Независимо от того, почему в мире вы ожидаете добавить конец массива, присваивая ему !?Лучшее, на что вы можете надеяться, это заменить весь массив.