Dzeko arrives at the San Siro on a two-year contract after spending the last six seasons with Roma.
The Bosnia and Herzegovina international initially joined Roma on loan from Manchester City in the summer of 2015 before making the move permanent a year later.
Dzeko made 260 appearances in all competitions for Roma, scoring 119 goals and was the Serie A’s top scorer in the 2016/2017 season with 29 goals.
His arrival at Inter Milan follows the departure of Romelu Lukaku to Chelsea.
A brief statement on Inter’s official site read: "FC Internazionale Milano is pleased to announce the signing of Edin Dzeko. The forward has joined the club from Roma on a permanent transfer, having signed a two-year contract that runs until 30 June 2023."
The 35-year-old added: "The sensations are good, I'm very happy. This is a great opportunity for me, I want to thank the management and the coach for their trust, because they think I can still make a difference."
"I arrive at Inter, a great club, the Italian champions. In these six years in Serie A, I have been able to see closely what Inter are and what they represent: now I can play with them and I am very happy."
Dzeko actually played and scored in Inter Milan’s 3-0 win over Dynamo Kiev in a pre-season friendly on Saturday before the deal was officially announced hours later.
Inter Milan begin the defence of their Serie A title at home to Genoa next weekend.