Barnetta has found first-team opportunities limited so far this season at Schalke, making just one appearance in their opening four league games.
With Schalke signing Kevin-Prince Boateng last week, Barentta has decided to join Frankfurt in search of regular first-team football, declaring that he is delighted to move to the Europa League contenders.
He told reporters: "I'm immensely delighted that it has worked out and that I will get to know the city and the team.
"First of all, though, I have to join my national team and then I will return to Frankfurt in 10 days' time with [Swiss teammate] Pirmin Schwegler."
The 28-year-old had been linked with Crystal Palace in recent weeks, but has decided to stay in Germany on a short-term basis.