Footastic, Berlin is a great city! However, its very large and can be a bit overwhelming. Distances are large so I suggest focusing on one neighborhood per day and walking/eating/looking around there.
Do you have a hotel already? Otherwise I would suggest renting an apartment or a room e. g. through airbnb. That way you have better chances to connect with the local vibe.
Berlin is full of recent history, that's what I like the most here. Two somewhat different suggestions for that which take you away from the major tourist streams:
"Unterwelten", where you can do guided tours through real WWII bunkers. A bit scary but very interesting.
http://berliner-unterwelten.de
A guided tour through the Tempelhof airport building. Started as a show-off project of the Nazis, never completed, used by the US airforce for many years, used to be a regional airport, not any more. All kinds of history wherever you step in this huge building.
http://www.tempelhoferfreiheit.de/en.../public-tours/.
In addition the "100" bus takes you along many of Berlins major sights.
You asked for restaurant recommendations as well. What price range are you interested in? Berlin offers a lot from pricy star-cuisine to Currywurst and Döner.
Have fun!!
Safe travels
Primenumber