The 25-year-old has agreed a three-year contract at the Madejski Stadium.
His arrival comes after it was revealed veteran striker Yann Kermorgant will miss the start of the season following surgery on his hip and groin.
Bodvarsson joined Wolves from Kaiserslautern last summer, scoring three goals in 48 appearances.
"Jon is the type of player who can play in our system and he is able to play in a number up different positions within that system too - up front as a central striker, as one of a two or as a winger," Royals boss Jaap Stam told the club website.
"He's a strong runner, he's tall but he's very comfortable on the ball, he's got some pace, so he's definitely a player who will be a useful addition to our squad."
Find all the latest football transfers on our dedicated page.
Reading have signed Iceland international striker Jon Dadi Bodvarsson from Championship rivals Wolves for an undisclosed fee.