Use a nonstick teflon pan when: cooking delicate scrambled or fried eggs, omelets, and crepes. Really, that's it. And if you have a beautifully seasoned cast iron skillet, you can skip the category altogether and use that instead. While nonstick pans are slightly easier to clean than their cast iron and stainless steel analogues, they are notoriously bad at browning and may even pose health concerns if used improperly. Additionally, if your nonstick pan no longer lives up to its implied promise, it may be time to replace it, as the teflon coating becomes less effective with use (due to scratching of the surface).
Keep reading to learn when to use a cast iron or stainless steel pan.
Use a seasoned cast iron pan when: searing/browning meat and vegetables; cooking frittatas, pizza (flipped upside-down it makes for an excellent makeshift pizza stone), cornbread, or dutch babies; and deep-frying. Cast iron is particularly versatile, thanks to its even heat distribution, nonstick surface (when properly seasoned), and impressive heat retention. Avoid cast iron when cooking anything acidic over a long period of time as lengthy exposure to an acidic ingredient can corrode the metal, degrading the pan's nonstick finish and imparting an unpleasant metallic taste to food.
Use a stainless steel pan when: caramelizing sugar or browning butter, as it's much easier to keep an eye on the browning process in a light-colored pan (vs. cast iron or teflon pans). Stainless steel pans can also be used anywhere one might use a cast iron skillet, as well as for any recipe that calls out using a "nonreactive pan" as it can handle longer exposures to acidic ingredients without detriment.