You could use the GetFiles method which takes a wildcard mapping pattern and returns the files. If you are using .NET 4.0 you could also use the EnumerateFiles method which returns an IEnumerable<string>
instead of an array. Once you get the files you could apply your filtering logic using LINQ extension methods to order the collection by file creation time and get the first element.
Dim result = Directory.
EnumerateFiles("c:\test", "*.txt", SearchOption.TopDirectoryOnly).
OrderByDescending(Function(file) New FileInfo(file).CreationTime).
FirstOrDefault()