Agreement was reached late Saturday in negotiations over pay and other issues for 142,000 employees of Deutsche Bahn, according Norbert Hansen, a top personnel official at German rail.
Normal service resumed: Deutsche Bahn's proposed strike has been averted
The agreement followed a near 40-hour marathon negotiation session in Frankfurt and headed off threats of a looming strike.
The compromise calls for pay increases of 2.5 per cent as of Sunday and a second increase of 2 per cent on January 1, 2010. In addition, a one-time payment of 500 euros ($640) in December was made as part of the 18-month contract.
Panels on both the union side as well as German rail must approve the deal, but that was seen as a formality.
Unions had been demanding 6.5 to 10 percent pay increases. Deutsche Bahn had offered 1 percent.
German rail union Transnet head Alexander Kirchner said the employer had made concessions, including better working conditions, and he called the agreement a good sign for the economy.
Unions and German rail entered the fourth round of talks on Friday, when work schedules were a central issue.
On Thursday, warning strikes delayed train travel mainly in the states of Bavaria and North Rhine Westphalia.
Long-distance trains from the Bavarian city of Nuremberg to Hamburg and Karlsruhe had to be cancelled, but most services in the other 14 German states were operating normally.