Plant UML
I would say, the best tool for any UML diagrams. Diagrams are auto-generated with simple statements.
We can build our own themes for components and reuse them across the applications. This tool has a desktop version as well JAR file. When you edit the file through JAR, diagrams are auto-refreshed, png images are generated.
@startuml actor User #green participant UI participant "Server" #99FF99 UI->Server:Login request UI<--Server:Login response @enduml
Link: https://plantuml.com/
Download Jar: https://plantuml.com/download
Draw.io
This tool is handy for software design diagrams, anyone can quickly build diagrams with drag and drop. It exports the file as XML, you can re-open it and modify the diagrams anytime. The tool has the option to save to a cloud option like a drive etc.
Link: https://app.diagrams.net/
C4Models
The C4 model documents the architecture of a software system, by showing multiple points of view that explain the decomposition of a system into containers and components, the relationship between these elements, and, where appropriate, the relation with its users
Link: https://c4model.com/