If anyone starts to cast a spell or attack initiative is rolled.
Small variation - the first person who announces an action gets that action off, then initiative is rolled for the rest. Beating out someone who's got the jump on you isn't really a thing. This creates a bias toward action, as it gives a slight advantage to anyone who actually wants to do something, rather than stand around staring at each other hedging their bets.
If you want to interrupt an action, then be the one who announces, "I ready an action for when that guy over there tries anything funny."
major variation (not used in a D&D game, but is really interesting): Whoever announces an action goes first. That player (or the GM, if the NPC acts first), chooses the next person to go. You continue this until all characters in the scene have gone once. The last person in the first round chooses the first person in the second, and we continue around. This makes initiative a thing that can be tactically manipulated to set up events and manuvers the way you want.
Note, for example, that if the PCs choose to all go before the bad guys, the bad guys finish the first round, and then can choose themselves to start the second round - effectively going twice in a row without the PCs being able to respond. This is not a good strategy if you expect a conflict to go several rounds, but can be devastating if the encounter is only expected to go a couple of rounds.
Yes, this pretty much eliminates the high-dex "I always get first initiative" thing. For some who feel Dex is overpowered, this is a feature, not a bug. You can introduce a class power or feat for high-dex people that allows them to overrule the first action declaration, to reintroduce that if you want.