A card sharp is a person with exceptional skill at card games — or, much more often, someone who uses that skill to cheat. Context decides which meaning applies, but the negative one dominates, so being called a card sharp is rarely a compliment.
In the neutral sense, it can describe a gifted or professional player who makes money from poker, blackjack or baccarat. In the negative sense, it points to sleight of hand: dealing seconds, stacking the deck, marking cards or working with a partner. “Card sharp” and “card shark” have both been in use for a long time, and “shark” carries the same predatory sense as in loan shark.
Related slang includes mechanic, for a dealer who can manipulate cards, and shark, a strong player who preys on weaker ones. Casinos protect their games with procedures such as card washing, shuffling machines and surveillance; online, certified RNGs take card handling out of human hands.