This is one of the most misunderstood rules in all of prose fiction.
It’s important to understand that every single sentence you write is simultaneously telling one thing (the explicit/referential meaning of the sentence) and showing others (that which is implied or inferred by the sentence).
So, the famous example of “showing” by way of “the light glinting in broken glass” is indeed “showing” the reader that it is night, because that is not made explicit but rather inferred by the reader. However, the sentence is “telling” us that there is broken glass and that light is glinting in it.
The general recipe for “show, don’t tell” is this: think about whatever it is you want the reader to feel or imagine or understand, and then don’t write that thing. Instead, write around it, so that the reader can feel what you are getting at by way of implication or inference.
Showing is always more evocative than telling, since the reader supplies the information from their own imagination, which is necessarily more vivid than reading it on the page. Showing uses more of the reader’s brain, and places the target image in their imagination, not just within their linguistic processing.
“Show, don’t tell” applies to all aspects of writing, including theme, tone, character, emotion, plot, setting, description, etc. You can show any of these things, or you can tell them.
For example, to “tell” emotion is to say, “John was angry”. To “show” the same emotion is to have John punch someone, or tell them to fuck off. Likewise we can identify “telling” for character, as in “John was the sort of guy to get angry easily”, for setting, as in “they were standing in a grocery store”, for description, as in “it was really dark”, and so on, all of which can be translated into “showing” statements by picking out the right sort of evocative details—details which imply or allow the reader to infer that which you intended to convey.
There are many literary techniques for “showing”. For example, the techniques of metaphor, irony, understatement, ambiguity, and unreliable narration all depend essentially on what is not stated by the writer. Each of them, in their own way, refrains from telling directly, and instead shows just enough for the reader to comprehend the meaning on their own—these techniques all rely on the reader to do some work to find the underlying meaning, where it’s hidden between the lines. They are all examples of showing, rather than telling.
In literature, the written text includes narrative gaps that are filled in by the reader. According to some critics, in particular reader-response critic Stanley Fish, this is the distinctive feature of literature: plain-language is referential and expository, whereas literary language reveals additional meaning through intentional interpretive gaps. According to this view, “show, don’t tell” is not just advice on good writing—it is the essence of literature. Plain language puts the meaning in the surface level of the words (it “tells”) and literary language puts the meaning in interpretive gaps filled by the reader (it “shows”).
Before writing anything, you should figure out what it is you are hoping to express. You can think of what you want to express as the “target”—it could be a character trait, an emotion, a theme etc. The goal of “show, don’t tell” is to write in such a way that you express the “target” without saying it explicitly.