why use multiple From instructions in multistage build?
First of all, you don't need the COPY instructions or multiple RUN instructions if you have only one stage:
FROM diamol/base AS build-stage
RUN echo 'Building...' &gt; /build.txt &amp;&amp; echo 'Testing...' &gt;&gt; /build.txt
CMD cat /build.txt

Of course, the textbook example is just that - an example to illustrate the concept.
In reality multistage builds are used to create smaller final images, while keeping the entire build process inside the container.
Generally speaking one may install all development and runtime dependencies in a build stage, then copy just the final distribution package to the final stage, where only runtime dependencies are installed to reduce the final image size.
For example:
FROM ubuntu:latest AS base
RUN apt -y install some-library

FROM base AS build
RUN apt -y install some-library-dev
COPY . /src
WORKDIR /src
RUN make &amp;&amp; make install

FROM base
COPY --from=build /usr/bin/app /usr/bin/app
CMD /usr/bin/app