As Schweinebacke has noted, there are two kind of differences: a) differences in availability of commands and environments b) differences in the default settings. Only the latter may be changed easily using options and commands.
Differences with regard to available commands and environments:
report feature the
\chapter sectioning command, while
\appendix will cause
\chapters to be typeset as "Appendix X" instead of "Chapter X". For
article, this isn't applicable.
report will start a new page for
\parts , while
book offers the
\backmatter commands to control page numbering (
Roman for the front matter,
arabic elsewhere) and numbering of sectioning titles (no numbering in the front and back matter), while
book doesn't offer the
abstract environment, while
Differences with regard to default settings:
book class uses the
twoside class option (which means different margins and headers/footers for even and odd pages), while
openright (new parts and chapters start on "right" pages, adding a blank page before if necessary), while
openany. (Note that "right" means an odd page in
twoside mode, but any page in
oneside mode.) For
article, the distinction between
openany isn't applicable.
book uses the
headings pagestyle for non-chapter-starting pages, while
article always use
titlepage (the title page and -- if applicable -- the
abstract environment will be typeset on pages of their own), while
report, the lowest-level sectioning command which is numbered and incorporated into the table of contents is
\subsection, while for
article it is
report will use the arguments of
\sections for running headings (if such headings are present), while
article will use
report will number floats (figures, tables etc.), equations, and footnotes per chapter, while
article will number them continuously. Note that footnotes -- even when numbered per chapter -- do not feature a chapter prefix.
report will use
\bibname (which defaults to "Bibliography") for the heading of bibliographic references, while
article will use
\refname (which defaults to "References").
All of the above is valid for
scrartcl as well.