+1, gnats suck, they lay their eggs in the soil...
I have trouble with them sometimes, I just spray the top of the soil with Sevin, available at Home Depot... It kills them instantly, and works for a few weeks...
It leaves a milky residue on everything it dries on, and I don't recommend...