The 29-year-old becomes the Hammers’ ninth summer signing.
Amalfitano, who has earned a solitary cap for France, spent most of last season on loan at West Brom.
He was part of the Marseille side that lifted the French League Cup in 2012, the same year he made his international debut by playing 23 minutes against Germany in a friendly.
According to the French club’s website he played 87 matches for Olympique Marseille, scoring seven goals and providing 14 assists.
Nice-born Amalfitano said: "I've waited a long time but I am very happy to have signed here.
“The club wanted me a lot and for that I waited for West Ham and now I'm here.
"The manager explained to me how the team plays and how he needs me. I explained to him where I prefer as my position in his team.
"I prefer to play behind the striker but last year with West Brom I played on the right.
"I enjoyed my first year in English football and for that reason I have come back and hopefully I can improve again.
“The first year was good for my experience and I will try to help West Ham.”