Maybe this method will run a bit faster.
'http://analystcave.com/merge-csv-files-or-txt-files-in-a-folder/
Sub Test_MergeFiles()
  Dim fileNames(0 To 1) As String
  
  fileNames(0) = "C:\somefolder\test.csv"
  fileNames(1) = "C:\somefolder\test1.csv"
       
  MergeFiles fileNames, "C:\Merged.csv", True, False
End Sub


'http://www.excelforum.com/excel-programming-vba-macros/1161879-merge-select-csv-txt-files.html
Sub AlphaFrog()
  Dim s() As String, i As Long, fn As String
  
  fn = ThisWorkbook.Path & "\Merged.csv"
  
  ' Prompt user to select files
  With Application.FileDialog(msoFileDialogOpen)
    .InitialFileName = ThisWorkbook.Path              ' Default path
    .FilterIndex = 6    'CSV files
    .Title = "Please Select CSV Files to Merge (Ctrl+Click to multi-select files)"
    '.ButtonName = "Open"
    .AllowMultiSelect = True
    .Show
    If .SelectedItems.Count = 0 Then Exit Sub   ' User clicked cancel
    
    'Convert poke variant array data to string array.
    ReDim s(1 To .SelectedItems.Count) As String
    For i = 1 To .SelectedItems.Count
      s(i) = .SelectedItems(i)
    Next i
  End With


    MergeFiles s(), fn
    
    Shell "cmd /c " & fn, vbNormal
End Sub


'http://analystcave.com/merge-csv-files-or-txt-files-in-a-folder/
Sub MergeFiles(fileNames() As String, newFileName As String, Optional headers As Boolean = True, Optional addNewLine As Boolean = False)
  Dim fileName As Variant, textData As String, fileNo As Integer, result As String, firstHeader As Boolean
  
  firstHeader = True
  For Each fileName In fileNames
    fileNo = FreeFile
    Open fileName For Input As #fileNo
    textData = Input$(LOF(fileNo), fileNo)
    Close #fileNo
    If headers Then
      'result = result & IIf(addNewLine, vbNewLine, "") & IIf(firstHeader, textData, right(textData, Len(textData) - InStr(textData, vbNewLine)))
      result = result & IIf(addNewLine, vbNewLine, "") & IIf(firstHeader, textData, Right(textData, Len(textData) - InStr(textData, vbNewLine) - 1))
      firstHeader = False
    Else
      result = result & IIf(addNewLine, vbNewLine, "") & textData
    End If
  Next fileName
  
  fileNo = FreeFile
  Open newFileName For Output As #fileNo
  Print #fileNo, result
  Close #fileNo
End Sub