/quale/ is bound to a context of things among which to choose from, and
the context is silent.
/che/ is bound to an expressed (sometimes repeated) context
q1a. Mi presti uno dei tuoi libri di fisica per favore?
q1b.1. quale vuoi?
q1b.2. che libro vuoi?
q2a. Io conosco bene i piatti (dishes) cinesi.
q2b.1. mi fa piacere, per me questi nomi sono misteriosi, quale mi consigli ?
q2b.2. mi fa piacere, per me questi nomi sono misteriosi, che piatto mi consigli ?
/che cosa/ is just a very generic context, without any hint on the kind of things.
c1a. (some whispered words, quite difficult to understand)
c2b.1. che cosa hai detto?
c2b.2. che hai detto?
Here 'quale cosa hai detto?' would grammatically correct, but quite unusual.
c2a.1. che cosa voleva il tuo capo?
c2a.2. che voleva il tuo capo?
quite often /che/ in interrogative sentences is just a short form for /che cosa/.