I don't have any C# experience whatsoever, but I will share what I know about WFP as no one else seems to be replying to you...
I am willing to bet there is no C# in kernelspace. In fact, I wouldn't even try using C++ in kernelspace, just plain old vanilla C. So callout drivers are going to require some C and windows kernel coding.
However, if what you are trying to accomplish can be done using only the usermode APIs (those documented in the Windows SDK, and not in the DDK), then you have a chance in getting them to work. I am told that there is some sort of compatibility interface for C# which allows you to call C apis from C#. All the usermode API of WFP is is a C API, which you get by #include <fwpmu.h> and live in fwpuclnt.dll. So, calling the WFP management APIs should
reduce to the question: can you call C-language APIs from C#, which take OUT pointers, IN OUT pointers, etc. If so, then you should be able to call the WFP management APIs.
Hope this answers your question.