I will jump in on this one-I had a major infestation of our house plants. Tried a lot of things and eventually just moved them outside. They managed to get into my intake before I filtered it (and put the house plants outside) so I now have a few. I used Gnatrol full strength for 3 weeks and found it to work well with the house plants. Gnatrol ONLY affects the larvae though. During all if this I discovered a new product (I forget the name) but it was essentially ground glass that you tops dress soil with-can't get in-can't get out-knowing this I am thinking sand would be just as effective-ill try it on my girls this weekend. Sticky traps are AWESOME for catching adults-they are attracted to yellow and moisture so laying some on top of you soil also makes a huge difference in large volume gnat problems. They don't really hurt anything but I don't want to smoke them eitherI have to agree with gfk109. A few years ago I had problem with gnats and the best solution was to use sand to cover the tops of my soil; it works. Yes, a few will get in through the drainage holes, but they will be few and far between. I add "Great White" beneficial bacteria to my soil as well, so that helps too. I stopped using sprays like Azamax because the sand does such a good job. Most of the gnats I see now are dead on my floor, so I just have to sweep them up every once in a while. Keeping a clean garden also helps...
yes, the life cycle needs to be broken. i posted somewhere about cutting screens to fit over the pot with a cut to the middle to allow it to go around the base of plant. i did this with all my plants and have not seen even one gnat since. the adults die in a few days to a week and the eggs and larvae make pretty good fertilizer.To successfully rid a garden of fungus gnats you must break the life cycle completely. The egg, the larvae, and the adult must all be dealt with. Find an ovicide like Gnatrol and use it every 5 days 3-4 times. Yellow sticky traps, topsoil treatments like cayenne and neem, and a clean garden should do the trick.