Indian: Priyaa at Dorsett & McKelvey! Awesome any time, but they have a great buffet at lunch.
There is an India's Rasoi in Clayton (is there one on Manchester?). I have only been there once, had high expectations, and found it too salty.
If anyone knows of a single Indian restaurant in St. Charles, I would be forever indebted to you. I used to live in U City and am realizing that I was terribly spoiled as far as restaurants.
Thai: Thai Country Cafe in the Loop. I do think they serve the best Pad Thai in the world (although I have never been to Thailand). Thai Kitchen at Dorsett & McKelvey is excellent also, if you get a curry.
Italian: Cunnetto's (on the Hill!) -- My family used to go there every year for my birthday
Chinese: Guo Bin, Delmar & 170, underneath a retirement home... Hunan Empress on Olive near 141 is very good, too.
Mexican: Qdoba (there's a location on Manchester and one in the Loop) has recently replaced El Maguey at the top of my list. Really they are apples and oranges, though; Qdoba is much more fresh, and El Maguey is good if you want something heavier.
American/mix:
I don't know about a favorite, but I ate at Lewis & Clark's on Main Street in St. Charles the other night for my anniversary. Very good food, good service, and a very cool atmosphere.
Sweet Tomatoes (on Olive at Lindbergh) is great if you like salads.