Except for the smoking comment, I think Elizadoo (and daughter) has characterized Prague and Budapest pretty well.
One trip to the Central Market in Budapest will convince you about the food. My experience has been that central and eastern Europe tend to be more focused on meats. Vienna and Bratislava have schnitzels and sausages everywhere. Prague has some of the heaviest meat and dumpling dishes anywhere I've been.
Since this thread is Budapest or Prague (not Austria), I'd say Budapest has good sightseeing, some good restaurants, and the ruin pubs are kind of cool. Prague has excellent sightseeing and history, but many parts are overrun with tourists. Stick to the Jewish Quarter and Mala Strana to avoid the worst crowds. If you like beer, the beer in Prague just tastes different than anywhere else.
Both are great cities and, as an American, they would probably both rank in my top 5 in Europe.