The reason that agricultural subsidies are so large in the United States is because many large agricultural corporations lobby to congress for more subsidies. These subsidies are not doing anything to benefit the public and the cost of these subsidies is paid by the public. The reason that the subsidies stay in place is due to the fact that their cost is distributed among all members of the public so they don't have a very large incentive to do anything about it. The supporters of these subsidies have been part of both parties historically however I think the Republican party is coming around to calling out the subsidies' wastefulness.
The main reason that subsidies don't benefit the public is because adding subsidies to an industry creates a price floor which incentivizes the industry to produce more of their product than is used by the market. This is clear as subsidized products like milk and corn often go to waste. The main beneficiaries of these subsidies are the industries that recieve them because they don't have to produce as much or as efficiently.
I think that subsidies can be helpful to get industries get off the ground but I don't think that they should be a permanent asset to an industry.