"Yes we want a country that shows solidarity," he said. "A country which opens up the way to a good life for the young, and creates room for older people in our midst. A country which joins those who have lived here for generations with those who have only just made their homes here."
He said it was in the interests of the country to embed caring for one another into its policies.
"Who finds no caring and gives none, cannot grow, cannot blossom," he added.
And referring to a recent visit he made to a refugee home in Brandenburg, Gauck said, "We will never be able to take in all those people who come. But we will grant asylum with open hearts to those who are persecuted - and will greet migrants who are needed by our country with good will."
Freiburg Archbishop and head of the German Catholic Church Robert Zollitsch warned of social splits within Germany. "The poor remain behind and the wealth is increasingly in the hands of the few," he told Monday's Ruhr Nachrichten newspaper.
He said the idea of increasing tax on the rich to fund socially important projects should no longer be a taboo.
Head of Germany's Protestant Church Nikolaus Schneider also stressed that those on the edges of society should be the focus at this time of year.
"The Christmas message challenges us to raise our voices for these people and to search for social justice," he said in Hannover. He gave this a political twist by calling for Germany to show increased solidarity with Greece and other European countries suffering during the euro crisis.
"Europe is more than an economic zone," he said. "Europe is a project of peace."