"food" is anything you eat. a "meal" is any single food or collection of foods that you eat and consider it to be a specific event (breakfast, brunch, lunch, afternoon tea, tea, dinner, supper etc). a "dish" is usually made up of several different foods (cooked or not) and might be just one part of a bigger meal.