You, writer wanting to include Italian characters in your story; and you, reader fascinated by all things Italian - this is for you.
One thing you need to know is that Italian curse. They curse a lot, actually; and while a bilingual Italian might go with shit or fuck, why not showcase some insider knowledge in your work by using some actual Italian vocabulary?
Little trigger warning before we go forward: profanity. Because yes, of course we're talking of curse words, but also God.
Take note that I won't go over regional dialects - because I only have insights on some of them and it would take me a full dictionary.
This said, let's proceed:
Cazzo: The male reproductive organ, often invoked to show surprise, or displeasure with the current state of the world. Also found in sentences like che cazzo vuoi? Che cazzo dici? which can be intended as "What the hell do you want? The hell are you saying?". Indeed, like hell in the English language, cazzo is a very versatile word that can substitute the actual object or be added to a sentence just to provide emphasis. Non so più che cazzo fare, says the desperate man, "I don't know what else I can do."
Take note - this is not the only word to refer to the male genitalia, but it is by far the most common curse word. Honorable mention to minchia, which is far more common in southern Italy.
Figa/Fica: It makes sense to give insight here to the female reproductive organ. Interestingly enough, while cazzo is used to express discontent, figa is often the opposite. To say that something is cool, you might say that è figo/figa. If provided as commentary to an event or as an adjective to an object, this is sometime acceptable depending on your environment. Referring to a person (regardless of gender) it means extreme attractiveness, but its also considered quite a crude comment and its sexual connotations way more apparent.
In Milan, figa is often used as your everyday exclamation. A little like putting a ! in your speech.
Vaffanculo: close to being the go-to swearing of choice, this is roughly translated with "Fuck you", but literally means "Take it up your ass". The way it's formulated is interesting, as vaffanculo is actually short for vai a fare in culo, which is "Go do (smth) in your ass". What is that is left to the reader's imagination, but as we might see later, anal sex is not intended to be a pleasurable experience in the curse-related common sense.
Fottiti/Fottetevi: The exact translation of "Fuck you (singular)/ Fuck you (plural)". More rare in the form vai a farti fottere, which is "Go get fucked". Again the sexual act here isn't considered particularly pleasant, hence it's an insult. Fottere, per-se, can be used as a coarse synonym for "having sex", but again, it's considered quite derogatory (unless you are an edgy kid eager to prove that you fuck a lot). Fottere has widespread use in the business word: being fucked over (essere fottuti) or having to take a bad deal are both situations where someone ti ha fottuto.
Merda: As you will surely understand by now curses are very close to the more basic human functions, and merda is no exception (meaning "shit"). You might use merda when surprised by something bad; main example stepping on some actual poo on the street. You can also be un uomo di merda, una merda d'uomo or just una merda: "a shitty man", "a shit". This often refers to you lacking some moral qualities. On the other hand, essere nella merda means to be in a difficult situation, likewise avere la merda fino al collo - "being neck-deep in shit".
Now for the blasphemy: you need to understand that, as proud ancestors of the Roman Empire and later on, guests/subjects of the Vatican, Italians have a very close-and-personal relationship with god, which is now intended to be the christian god. While blasphemy is in theory outlawed (yea, cue rolling eyes here) in some regions of Italy it's so common that nobody bats an eye, unless you're going nuclear inside a church or a business context (in which case, well, it's considered bad form).
So, what are the targets of blasphemy? Mainly dio, meaning god, and la madonna, meaning virgin Mary. And what can you say?
If your target is god, you might use pretty much any animal - porco/maiale (pig/pork) and cane (dog) being the most popular options - but you can also associate any negative connotation: merda, ladro (thief), bastardo (bastard), schifoso (disgusting). You can put the adjective after or before god, it's the same.
We have the same treatment of Mary, however here there's a definite tinge of sexism, as she is often referred as puttana (bitch).
A watered down version of this is maremma maiala, which is "pig maremma" (maremma is a region of Tuscany known for being swampy and hot in the summer). We actually have a lot of this half-blasphemies, where you swap the name of the holy concept for something that is phonetically similar. Porco zio (pig uncle) works because zio and dio are pronounced in a similar way and might raise less eyebrows.
Now, when should you blaspheme? As with common curse words you might do it to indicate, especially to god, that you're unhappy with the current state of affairs. But again, close and personal - sometimes you might just want to say it to express your incredulity. And you might even say them while laughing out loud, full of surprise.
While the culture is divided on blasphemy - some considered just a quirk of our culture, others condemn them as very rude - regardless of one's actual beliefs, I can assure you everyone in Italy is familiar with them.
Last but not least, and sadly for some famous plumber, we don't really say mamma mia (my mother). We might say it, but it's not that common, again to express surprise; and it's kind of uncommon.
So, next time your Italian character has to express surprise, consider peppering your text with some authentic Italian swearwords.