C# DEMO:

string[] files1 = Directory.GetFiles(sSourceFolder, "*.txt", SearchOption.AllDirectories);
string[] files2 = Directory.GetFiles(sSourceFolder, "*.csv", SearchOption.AllDirectories);

List<string> lstFiles = new List<string>();
lstFiles.AddRange(files1);
lstFiles.AddRange(files2);


VB.NET:


Imports System.Collections.Generic

Public Shared Function GetFiles _
(ByVal sourceFolder As String, ByVal filters As String, ByVal searchOption As System.IO.SearchOption) _
As List(Of String)

'Return filters.Split(CChar("|")).SelectMany(F >= System.IO.Directory.GetFiles(sourceFolder, F, searchOption)).ToArray()
Dim arrList As New List(Of String)()
Dim arrTmp As IList(Of String)
Dim arrFilter As String() = filters.Split(CChar("|"))

For Each f1 In arrFilter
arrTmp = System.IO.Directory.GetFiles(sourceFolder, f1, searchOption)
For Each f2 In arrTmp
arrList.Add(f2)
Next
Next


Return arrList

End Function
Dim FileName As String = "WELLMED*RXCHF70CL.TXT.zip|WMCOSMOS*RXCHF70CL.TXT.zip"     'muli items use | to split'

Dim files As List(Of String) = GetFiles(CopyFTPSource, FileName, IO.SearchOption.TopDirectoryOnly)
For Each file As String In files
System.IO.File.Copy(CopyFTPSource & System.IO.Path.GetFileName(file), CopySource & System.IO.Path.GetFileName(file), True)
System.IO.File.Delete(CopyFTPSource & System.IO.Path.GetFileName(file))
Next