On May 10, 1967, the Athletics traded Charles to the New York Mets for Larry Elliot and $50,000. He would be the oldest regular on his new team. In 1968, he led the Mets in home runs with 15. In 1969, he shared third base duties with rookie Wayne Garrett as a member of the Miracle Mets team that unexpectedly won the World Series, after finishing dead last in five of its first seven seasons and 9th in a 10-team National League in the other two. That year, the Mets had trailed the Chicago Cubs by as many as 10 games in the National League East (both leagues had split into two divisions after expanding from 10 teams to 12) on August 13. On September 24, they clinched the division with a 6–0 victory over the St. Louis Cardinals, with Charles homering off Steve Carlton (his final Major League home run) and Donn Clendenon homering twice and Gary Gentry pitching a four-hitter for the victory.