I was with you for the first part, that cooking is a craft and anyone can learn it. I'm not with you on the difference between good and great.
On the craft issue, I think several points made in the last couple of posts are accurate but sort of miss the mark. Nobody becomes a good cook who has no interest in doing so, who in fact hates doing it, unless we're talking about someone for whom this is a profession imposed upon him through a particularly nasty form of apprenticeship -- and probably not even then. So if we're trying to figure out whether anyone can be a good cook, I'd say yes, given basic minima: some desire to be a good cook, no actual major handicaps to becoming one (like having no sense of taste, or being quadriplegic, or whatever).
On the great cooking thing, though, I think great cooking is a lot more than having some clue that fresh is better than wilted, or being able to "perk up" a recipe. I think that's good cooking. Great cooking does require talent, and a lot of hard work.
There's a lot of nonsense around -- has been for a long time -- that great cooking is about love and passion and all that. Sure, that counts, but great cooking is also a matter of intelligence, discipline, hard work, and precision. Talent helps, but only to speed things up (unless we're talking about the upper echelons of professional cooking, which is a different matter).
Great cooking requires as a baseline the ability to walk through a market and pick out stuff that looks fresh and good, suitable to the diners, and by the time you're at the register have a pretty clear sense of what you're going to do with each bit of it. By the time you get home, you should know what steps, in what order, and how long they're going to take. This is as opposed to deciding on some recipes, making some lists, and going off to buy the stuff from your local high-end market because you figure the quality is probably good; that's useful and important and broadens your horizons, but that's just ordinary good cooking. Certainly you can and should go look at that wonderful recipe in the back of that cookbook, but when push comes to shove you should have enough in your head and your hands that you can step up to the counter and get moving. When you're cutting, do it right, do it clean, do it fast, and know what can be cut now and what can't. If you're making a sauce, know not only what you want but what it should be like now, in 10 minutes, in an hour, and when and how you can leave it alone. You must know.
Only with all this can you get to the stovetop for those final bits and pieces, with your friends and family or guests or whoever getting ready for dinner, and know what's going to happen, how, how fast. If that piece of fish seems to be cooking differently than you expected, you're going to have to deal with that right now, and you can't run back to your recipe, and you can't let that sauce scorch while you're at it, and if you'd planned to mince some chives while cooking the fish I hope you're fast with a knife because you're not going to have time.
A great cook is the one who does all this without really getting flustered, delivers the meal she or he had in mind -- unless some bit of inspiration allowed for an upward leap along the way -- and walks back to the kitchen at the end of the evening to find that there really isn't much mess to clean up.
Love, passion, and sense of flavor are wonderful things, but nothing can make up for knowledge, understanding, and the technique to implement them.