Every damaging move uses a damage category. In modern games, physical moves generally use the user's Attack against the target's Defense, while special moves use Special Attack against Special Defense. Status moves usually do not deal direct damage through either calculation.
This distinction is one of the fastest ways to improve a moveset.
Start by comparing Attack and Special Attack
If a Pokémon's Attack is much higher than its Special Attack, physical moves usually make better use of its stats. If Special Attack is much higher, special moves are usually the natural starting point.
Base stats are not the whole story—abilities, items, setup moves, and available move power can change the answer—but they are the first clue.
Move power does not tell you the whole story
A high-power special move can still underperform on a Pokémon with very low Special Attack, just as a strong physical move can be inefficient on a dedicated special attacker. Compare the move's category to the stat that actually powers it.
Accuracy, secondary effects, recoil, priority, and reliability matter too. The best move is not always the one with the largest power number.
STAB can make a slightly weaker move better
Moves that match one of the user's types usually receive Same-Type Attack Bonus, commonly called STAB. That bonus often makes a reliable STAB attack preferable to a slightly stronger off-type move.
Coverage still matters when it hits an important target that resists your STAB or is especially vulnerable to another type.
Mixed attackers need a reason to split
A mixed attacker uses both physical and special moves. That can punish opponents that rely heavily on one defensive stat, but it also makes training more complicated because investment may be divided between Attack and Special Attack.
Use a mixed set when the coverage or matchup benefit is worth that tradeoff, not simply because the Pokémon has access to good moves in both categories.
Remember that older generations work differently
Before Generation IV, a move's physical or special classification was determined by its type rather than by each move individually. If you are building for an older game, use the mechanics of that generation instead of assuming a modern moveset works the same way.
Dex Atlas generation and game context is useful here because move availability and battle rules can change across eras.