Kanban focuses on visualizing workflow, limiting work in progress (WIP), and continuous flow. Scrum uses time-boxed iterations (sprints) with specific roles (Scrum Master, Product Owner, Development Team) and events (sprint planning, daily scrum, sprint review, sprint retrospective).
Use Kanban when you need continuous delivery, have evolving priorities, and want to improve workflow incrementally. Use Scrum when you need structured development with fixed-length iterations, have clear goals for each iteration, and benefit from team collaboration with defined roles.