For long term weedcontrol look for a product look for something containing Sulfosulfuron as it lasts 6 months.
As for horsetail you have to break down the waxy coating on it, i usually walk on it on strim it then spray with Round-up (Glyphosate) and this does the trick.
For areas in beds or grass you put a glove on then a sock over the top and then soak it in a glyphosate mix and then use your hand to apply it, this stops you hitting non target species.
As others have said salt is an excellent long term killer as well, it was used during roman times to kill off the fields of your enemy to deny them food.