Your first problem is determining what the business/requestor means when they say “1 month”. Does that mean 30 days? 28 days? Same day of month in the previous month? If the last option, what if the previous months has less days than the current month (e.g. if it’s the 31st, how do you handle months with only 30 days). For my example below I’ll assume previous 30 days.
You’ll have to do it one folder at a time (unless it’s all subdirectories and you’re ok searching all subdirectories). This can be done by passing it into an array and doing a for each folder in array of folders:
Directory.GetFiles(YourDirectory).AsEnumerable().Where(function (x) File.GetLastWriteTime(x).Date >= today.adddays(-30))
This uses the directory.getfiles() method which will return an ienumerable of strings that are the full file paths of all files in YourDirectory that was modified in the last 30 days. NOTE: I haven’t tested so there might be some syntax error, but you get the idea.