dired-diff) command compares the current file (the file at point) with another file (read using the minibuffer) using the
diff program. The file specified with the minibuffer is the first argument of
diff, and file at point is the second argument. The output of the
diff program is shown in a buffer using Diff mode (see Comparing Files).
If the region is active, the default for the file read using the minibuffer is the file at the mark (i.e., the ordinary Emacs mark, not a Dired mark; see Setting Mark). Otherwise, if the file at point has a backup file (see Backup), that is the default.
You could also compare files using
ediff-files, see Major Entry Points in Ediff User’s Manual.