xargs attempts to construct an argument list from its stdin (standard input). Often, the stdin of xargs is the output of some command that has been piped to xargs. To create a useless example, we can waste a lot of characters listing the files in our home directory, instead of just typing ls -A ~ like this:
echo ~ | xargs ls -A
The pipe operator | takes the stdout (standard output) of the command to the left of it, and passes it as the stdin of the command to the right of it. It's important to remember that stdout is just a stream of text, which may cause problems when passed to the second command by xargs if it contains spaces or special characters. When we use find, whose output is filenames, with xargs, to avoid errors caused by special characters, we conventionally use
find -print 0 | xargs -0
This causes find to append the null character to each filename and xargs to interpret the list as null-delimited instead of space-delimited. The null character cannot appear in filenames, so there is no chance that a filename will be interpreted as two filenames if we delimit with the null character.
Since you missed out the pipe character | that separates and connects the two commands find and xargs, find thought that )xargs was one of its arguments, and since it did not begin with - or follow a valid test beginning with -, it decided that )xargs must be a path you want to search, but paths must precede expression, the syntax of find requires the path to search to be given before other arguments.
Many people prefer to use -exec with find instead of piping to xargs (see What is the difference between find with -exec and xargs?), for example:
find /path -tests ... -exec some_command {} +
This may be more suitable in your case, particularly since the mv command expects its last argument to be the destination. You could use xargs -I {} mv {} /path/to/destination but it would be more readable and perhaps more efficient to specify the destination with -t
find /home/tony/Desktop/unsorted_files/ -maxdepth 1 -not \( -type d -or -iname "*.jpg" -or -iname "*.gif" -or -iname "*.docx" \) -exec mv -t /home/tony/Desktop/dregsfolder -- {} +