"I am looking for lovely cultural towns (i prefer villages than cities) and scenery spots If possible scenic routes too."
"Cultural towns" - that usually means larger places with opera houses and such, not villages. If you are interested in small villages and scenery, then I think you'd be smart to head in the direction of Würzburg. Würzburg is roughly mid-way between Rüdesheim and Munich on the Main River. I'm not saying that you must stay there - with over 130,000 residents, it is no village - but Würzburg is an attractive small city with lots of hotel choices, and Würzburg is a train hub that makes it easy to visit some very nice old-world villages.
Iphofen (25 minutes by direct train from W'burg on the train route to Nuremberg.) The scenery on this route is quite nice as you approach Iphofen. Find tons of photos of gorgeous Iphofen HERE. And HERE is a brochure in English for Iphofen. The train to Iphofen stops in Kitzingen about 5 minutes before Iphofen - Kitzingen is also a nice place to visit - PHOTO here.
Have a look at the Würzburg - Iphofen train route.
Ochsenfurt and Marktbreit are also within 25 minutes of Würzburg on a different train route. These very attractive old-world Main River villages are often overlooked. See photos below.
Marktbreit scene
Marktbreit tower
Marktbreit town hall
Here's the train route map for Würzburg to Ochsenfurt and Marktbreit.
Ochsenfurt buildings
Ochsenfurt town wall
It is possible to stay in these smaller towns too, of course, but maybe a little less convenient for the train traveler overall than Würzburg. Rick Steves has hotel recommendations for Würzburg. The Hotel Regina and a hostel as well are right across from the main station.
Rothenburg is also a possible day trip from Würzburg - it's about 1.25 hours each way. But the other towns mentioned above are much less touristy.