Scope: what each tool actually does
Zabbix collects metrics from hosts (agents, SNMP, JMX, IPMI), stores in MySQL/Postgres, evaluates triggers, sends notifications, and renders graphs — all built in.
Grafana only visualizes. For data collection you need Prometheus (scrape) or Telegraf (push) or any supported backend. For alerting, Alertmanager or Grafana's own unified alerting (newer).
If you want 'one install, start monitoring in an hour', Zabbix is faster. If you want 'best-looking dashboards on top of my existing data', Grafana is better.
Zabbix 7.0 ships a modern dashboard framework, but the look-and-feel still lags Grafana.