Concurrent assertions are based on events for describing behavior over a sampled series of events. That event can only be defined as a change in a signal, and further qualified with a posedge or negedge.
Immediate assertions have no concept of sensitivity—they evaluate when the procedural code they appear in are executed. That procedural code could have edge, level, or combinatorial sensitivity; or could be in code with no sensitivities.