When you've got a headache. When you are at a symphony. When you are underwater. Also you should be silent when someone else is talking, unless they are swearing or using the Lord's name in vain. Even then you can QUIETLY deck them.
A good time to be silent is when you've won a race or done something wonderful and everyone is praising you, OR especially if you've won a race or done something wonderful and NO one is praising you. When a friend is telling you something, not only should you be silent, but listen, too. Listening and silence don't always come together. Jesus showed that we should be silent when wrongly accused or when someone tries to intimidate us, or provoke us. Sometimes silence is the best way to show that you understand, care, or disapprove.
Silence is good when you are in a Catholic Cathedral deep in Mexico, where a camera clicking echos like a sonic boom. (Been there, done that.) Silence is the way to go if you happen to find yourself in a small, fanatic, militant, country whose citizens spit on anyone speaking English.
Be silent when someone needs to hear your actions. Be silent in the library. Be silent at the movie theater. Be silent when the baby's sleeping. Be silent when you know a certain something about a certain someone that no one else knows. Be silent when you are cranky. The way I see it, there are more occasions on which to be silent than noisy. The most important rule on when to be silent is the one people seem to have the most trouble with: Be silent when you have nothing of value to say!