Switzerland and India have reached consensus on a free-trade agreement after 16 years of negotiations, Swiss Economy Minister Guy Parmelin said.