Sapere and conoscere are sometimes used as synonyms in the spoken language, however they do have some differences.
Roughly speaking, sapere highlights a learning process, while conoscere is used for "matter of facts".
I know Marco = Conosco Marco
You can't "learn" a person.
So Marco cannot be used here.
I know Milan really well = Conosco Milano molto bene
You can't "learn" a city either, so
So Milano is still not an option.
Sapere and conoscere can both precede an object:
Io so l'italiano. Io conosco l'italiano.
The only difference here is that sapere has an emphasis on the learning process, as in "I know Italian because I've studied it for a long time". They are synonyms in this case, because the difference is very suble.
You can say:
Conosco quel ristorante. (fact)
So dov'è quel ristorante. (learning - someone may have told you where it is, or you might have read it somewhere, etc.)
Conosco dov'è quel ristorante doesn't sound wrong to my ears (this is another case where these could be used as synonyms, especially in colloquial speech), but it sounds somewhat uncommon as the so dov'è variant is much more used.
So le opere di Verdi. This sounds weird. You could say So recitare le opere di Verdi ("sapere" has a second meaning in Italian: "to be able to") = I'm able to perform Verdi's operas.
For sentences like "I know that...", sapere is always used:
I know that he's really good at Italian = So che lui è molto bravo in italiano [someone told me this, so I was "instructed", it's a learning process]
Conosco che Nope!
I hope this helped. It is indeed a tricky difference!