I can NEVER properly cook fish. It always turns out rubbery or not cooked enough or over cooked.
Are you channeling your best self with this comment? (If you're not sure, check out our Code of Conduct.)
Can you offer us more information? What type of fish do you like? What dish would you like to learn to make?
Whenever I cook fish, mostly catfish and striped bass, I watch it like a hawk. When you see the flesh go form translucent to opaque, ie from raw to cooked, it can be a good way to know when to flip. When you see the meat turn opaque halfway up the filet, then you flip, when you see the meat turn opaque on the other half done. I also always cook fish on a med high heat. That way I will always get crispy skin or batter or whatever I crust the fish with. I would not recommend cooking fish on a grill until you have mastered fish in a skillet. The grill is a whole different monster that takes a lot of ruined fish to perfect.
Fish can be very tricky, so you're not alone on this. A good rule of thumb to use when cooking fish is typically 8-10 minutes total cooking time for every 1 inch of thickness. If it's a an oily fish like salmon, I aim towards the 10 minutes. I also look at visual clues like Mr_Vittles recommends, and touch the fish. Once it feels like it's starting to firm up, I know it's getting ready. Many types of fish also cook very well in a really hot oven like 450F.
pierino is a trusted source on General Cooking and Tough Love.
Another technique which works for these cuts of fish (not to mention scallops) is en papillote, which is the fancy French term for "in paper" meaning parchment. You seal the fish up in a little paper package with some herbs and aromatic flavors, plus a bit of wine or other moistening agent and bake in the oven. Time depends on type and thickness of the fish. You can also do this effectively with aluminum foil but I won't respect you in the morning.
My favorite method for fish is slow-roast from A New Way to Cook by Sally Schneider. It's for fillets. You brush a roasting pan with olive oil. Put the fish skin side down in the pan, brush it with more olive oil. Sprinkle the fish with salt. Tuck sprigs of thyme under the fish and on top of it. Heat the oven to 275 degrees and roast the fish for 15-30 minutes, depending upon the thickness of the fillets. Use an instant read thermometer. The fish is done with it reads 120 degrees.
I tried cooking scallops in butter over low heat recently and they were delicious. Low heat seemed to be the key there, too.
Fish fillet like flounder cook very quickly. For a thicker piece - Brown both sides in high heat and then lower heat so that fish cooks through.
If you're cooking the fish on the stovetop, the pan you're using can really work against you. If it's available to you, make sure to choose a pan with a thick, heavy base because it'll conduct heat more evenly. Stovetop hotspots are your enemy with something as delicate as a fillet of fish.
I like Pierino's "in paper" method the best because it's the only way I know how to do it well. Comes out perfect every time. I'm not so good at other methods, sadly. Here's my favorite recipe: http://www.food52.com/recipes...
Chickpeas to the Rescue
Curried Chickpea Sandwich
Simplest Homemade Doughnuts
My Family Recipe: Mexican Meatballs
What's New in the Neighborhood
12 Essential Italian Cookbooks