How to download tgz file from a url and decompress it efficiently?
DownloadTGZFile does two things, which is one thing too many.

It does what it name says it does (download a .TGZ file),
but it also unpacks the TGZ file, and that is not in the method's name.

Unpacking the file should be a different method. You should then have a new method that calls both methods.

Also, please follow the Microsoft guidelines:

The PascalCasing convention, used for all identifiers except parameter
names, capitalizes the first character of each word (including
acronyms over two letters in length), as shown in the following
examples:
PropertyDescriptor HtmlTag
A special case is made for two-letter acronyms in which both letters
are capitalized, as shown in the following identifier:
IOStream

Thus the method name should be DownloadTgzFile.