Both sham and charlatan are used to describe something/someone who is deceitful or a fraud, but I haven’t heard people referred to as “shams” often. It’s more common to refer to deceitful people as liars, frauds, or charlatans and to refer to things like marriages, businesses, or weddings as shams.
My 2 cents, anyway.