Why did the United States of America join World War 1?

Partly to retaliate the repeated German attacks on American vessels.
Partly to provide moral support to its allies, namely France and Great Britain.
Partly to protect its colonies all around the world.
Partly to fight communism in Europe.

The correct reasons for the United States joining World War 1 are:

1. Retaliation against German attacks on American vessels: One reason for the U.S. entry into the war was the German policy of unrestricted submarine warfare. Germany was sinking American merchant ships, and the most notable incident was the sinking of the British passenger liner RMS Lusitania in 1915, which had a significant number of American passengers on board.

2. Supporting its allies, France and Great Britain: The United States had strong economic ties with France and Great Britain and shared cultural and historical connections with these nations. It provided moral and military support by joining the war to defend shared democratic values and prevent a German dominance in Europe.

3. Protecting its interests and colonies: While protecting its colonies all around the world was not the primary reason for joining the war, the United States did have economic and strategic interests (such as in the Caribbean and the Pacific) that it sought to safeguard. The war threatened these interests, and joining the conflict allowed the U.S. to protect them.

4. Not related to fighting communism: The U.S. entry into World War 1 was not motivated by fighting communism. The war primarily revolved around issues of nationalism, territorial disputes, alliances, and balance of power in Europe, rather than the ideological struggle against communism (which became more prominent during the Cold War era after World War 2).