Data model and collection: push vs pull
Zabbix uses agents on each host that push metrics to the Zabbix server, plus agentless checks over SNMP, IPMI, JMX, and HTTP. Items are strongly typed and attached to hosts via templates.
Prometheus pulls metrics from HTTP /metrics endpoints exposed by instrumented services and exporters (node_exporter, kube-state-metrics, blackbox_exporter). Pull-only is a deliberate architectural choice.
Prometheus' label-based data model makes high-cardinality dimensions native (region, pod, instance, container). Zabbix's host-centric model is less flexible for ephemeral Kubernetes workloads.
If your targets are short-lived (CI jobs, batch runs, serverless), Prometheus needs a Pushgateway; Zabbix handles them more awkwardly through trapper items.