Bennett played in 14 games with seven starts in 2011, recording 17 catches for 144 yards.
"We had a very good, open, forthright visit with Martellus today, and we are excited to have him join the Giants family," Giants general manager Jerry Reese said. "He's ready to go to work and wants to prove he can be one of the top tight ends in the NFL; we think the sky is the limit for him here."
The 6-foot-6, 270-pounder played behind five-time Pro Bowl selection Jason Witten during his time in Dallas. In 60 regular season games (31 starts) for the Cowboys, Bennett caught 85 passes for 846 yards and four touchdowns (all of them as a rookie in 2008).
The Giants were in need of a tight end after Jake Ballard suffered a torn knee ligament in the Super Bowl. Fellow tight end Travis Beckum is also out with a torn ACL.
"In our situation it's a perfect match, because here we are with two guys that aren't going to be able to go," head coach Tom Coughlin said.