What happens if I attack with 2 Ochran Assassins? Which Ochran Assassin must be blocked?
Also, can my opponent cast spells (respond) after the Ochran Assassins have assigned damage?
Your opponent may choose for each creature which of the two Ochran Assassin it blocks (or both, if it's a Palace Guard).
509.1c The defending player checks each creature they control to see whether it’s affected by any requirements (effects that say a creature must block, or that it must block if some condition is met). If the number of requirements that are being obeyed is fewer than the maximum possible number of requirements that could be obeyed without disobeying any restrictions, the declaration of blockers is illegal.
If your opponent has two creatures, they'll need to fulfill four requirements, but "the maximum possible number of requirements that could be obeyed without disobeying any restrictions" is two, and as long as both creatures are blocking, two requirements are fulfilled.
And there's no opportunity to cast spells between damage assignment and damage dealing:
510.2. Second, all combat damage that’s been assigned is dealt simultaneously. This turn-based action doesn’t use the stack. No player has the chance to cast spells or activate abilities between the time combat damage is assigned and the time it’s dealt.
(quotes are from the Comprehensive Rules)