Like I mentioned before, tanlin has worked for me when I had an unbeatable fungus gnat problem. I'm in hydro. I was going to add some more to this convo, but wanted to do a little research first - I don't like to give out bad info.
Got googly for a few minutes and found accounts of tanlin not working in soil - or, you know, people having less than stellar results. The reviews from people dealing with fungus gnats in hydro seem to be pretty much unanimous in that tanlin works. I had the same experience.
Here's what I did in hydro. I had 20 plants in 2 gallon ebb and flow buckets. I top watered a gallon into each plant with 2 drops of tanlin - I think that was the dosage. It's either one or two drops per gallon. I'm too lazy to run downstairs right now and look. Anyway, I top watered it in and let it chill for four hours - (for noobs) meaning that in ebb and flow, the water with the tanlin was returned to the control bucket, then drained to the reservoir - then changed the reservoir like normal. They were gone after one, maybe 2 treatments. Plants were unaffected. This was done in early flowering, week 1 or 2.
Now, as a preventive, I keep sticky traps outside the tents/rooms, hanging from the ceiling.