as Jan already said a "Bahn Bonus Card" has the highest pay-off if you travel a lot by train. Then it probably is a nice way to get some gifts.
Apart from that you can get extra-points by buying stuff from partner-companies of Deutsche Bahn. For example if you rent a bike/car or a hotel room at the companies you find through this link: https://www.bahn.de/p/view/bahncard/bahnbonus/sammelpartner.shtml
Keep in mind that bonus-points expire after 12-36 months. That's another indicator that this program is aiming at people that frequently take the train. Otherwise you won't be abled to collect the high number of points required to get most of the gifts.