As an experiment last year, I tried to run Windows Firewall in "block all" mode and wrote this tool to manage it:
https://github.com/caesarshift/msfw
I would run "msfw log --tail" to watch for blocked connections. If I wanted to allow the connection, I then added it as a rule.
It was alot of work to setup initially, and I even found some scenarios where adding a rule was not sufficient to allow the connection. I never understood why.