Some additional thing on the trains:
Frankfurt Airport is quite well connected to the train network, so you can take high-speed trains to most major cities from there, including Hannover HBF (HBF="Hauptbahnhof", i.e. central station). The best choice for such trips is usually the "ICE"-class of overland trains (ICE= "Intercity Express"), they are fast and comfy, and take 2:30 hours from Frankfurt to Hannover. From there, you would have to go to Nienburg (Weser) with a slower overland train.
The website of the german state railway, which Robert already mentioned, is also available in english, they have an online trip planner where you can also book tickets:
http://www.bahn.de/i/view/GBR/en/index.shtmlUsually their pricing policy is that they offer large discounts when you book in advance, but then you have to take that particular train you booked. If you order the ticket like two or three months befor your trip, you can get the single trip Frankfurt - Nienburg for about 30,- Euro. The normal priced tickets, on the other hand, are always available and allow you to take other (earlier or later) trains on the same route as well, but are more expensive (about 100,- for a single trip Frankfurt - Nienburg).