For the subject of a verb:
* Which (when referring to a person or thing)
* Whom (formal, used as the object of a verb or preposition)
* What (when referring to a thing)
* That (when referring to a person or thing, often used in restrictive clauses)
For the object of a verb or preposition:
* Whom (formal)
* That (informal, sometimes used in restrictive clauses)
For a relative pronoun in a defining clause:
* That (informal)
Examples:
* Who is coming to dinner? -> Whom are you inviting to dinner?
* I know who stole the cookie. -> I know that you stole the cookie.
* Which of you is the tallest? -> What is the capital of France?
It's always best to consider the specific context and the grammatical function of "who" before choosing a synonym.