The 26-year-old international began his career at Cologne in 2002 and joined Bayern Munich four years later before returning to his first club in 2009.
Podolski, who has 95 caps, said: "I'm so happy to be joining Arsenal and the Premier League. They are one of the top clubs in Europe with a huge history.
"There are many top-quality players at Arsenal and their style is fantastic."
He added: "I have made this decision not against FC Cologne but because it is a great opportunity.
"This was not an easy decision for me at all, as Cologne, our fans and the city are something special for me."
The Poland-born forward, who had one year left on his contract, has scored 18 league goals so far this season for a side battling relegation, which is his best ever top-flight return.
He added: "I will always carry FC Cologne in my heart. We need to pool our strengths now and have to be fully focused on our survival in the Bundesliga."
Arsenal manager Arsene Wenger said: "He is a top-class player, a very good finisher and a proven performer at club and international level. He is a very strong player and will provide us with good attacking options."
Arsenal are looking to add to their striking options. While although Robin van Persie has netted 28 to become the Premier League's leading scorer, their next highest scorer is Theo Walcott on eight goals.