With Udaipur, I thought the food in the Hotels was pretty expensive and overrated. Try and get a meal at Ambrai, it's on the banks of the lake and pretty laid back, with good food. There's also a place called Lal Bagh which I've heard is good but it's pretty far off. Edelweiss has nice cakes and coffee. A meal at the Lake Palace is only worth it if you are really out to celebrate. And you need to reserve a table in advance, through the hotel you are staying at (assuming that you aren't staying at the Lake Palace, but you need to reserve a dinner table anyway even if you are!) and the food isn't really spectacular but the service and the ambience is.
In Delhi, depending on how you hold up against the infamous "Delhi Belly", try Karims (near Jama Masjid) and Khan Chacha (Khan market) for the kebabs, the sweets and nibbles at Bengali Market. If you need something more upmarket (or sanitary) try the Yum Yum Tree for Asian Food, Bukhara for North Indian food (particularly the North West Frontier Region). And visit Dilli Haat and sample the regional food stalls, especially the Momos. Delhi Street Food is legendary. If you head to the Chandni Chowk area you should find your way to Parathewaali Galli for the stuffed parathas. Carry appropriate medication :)
while i am not sure what kind of cuisine turns you on i hope you get a chance to try Dakshin at the ITC Sheraton which is a tremendous South Indian restaurant up North. I also like Punjabi By Nature which is regular Punjabi/Mughlai cuisine and has quite a few outlets across the greater Delhi area.