It takes too much time to render, or to transfer the information between the SMB server and ownCloud?
As far as I know, the SMB protocol doesn’t support result filtering (provide a link to official docs if you find something). This means that filtering has to be done in ownCloud, after transfering 1,2,3MB (or more) of data. If the bottleneck is in the transfer, this won’t solve your problem because we still need to get all the data.
Now, for the rendering part, you say you want to show only some files, so what if the file you want isn’t present? you’ll have to request for more files. This means that, again, we need to ask the SMB server for the whole list and filter the data in ownCloud.
In any case, ownCloud decides to present all the files, so you can filter in the client the way you want without asking the server again. Even if only 20 files are shown, ownCloud still needs to write the information of all the files.
The best option would be to change the folder structure of your share. If the root folder of the share has the 95k folders, as said we need to request those 95k folder, so the trick is to split those into smaller folders.
In addition, you can try to disable the previews and maybe other things to speed up things.