https://www.gnu.org/software/gawk/manual/gawk.html
based on section 1.1.2 1.1.2 Running awk Without Input Files
I can understand awk '{print $0}' marks.txt
it's just like echo. it will return
1) Amit Physics 80
2) Rahul Maths 90
3) Shyam Biology 87
4) Kedar English 85
5) Hari History 89
The following code also work as expected.
awk '{print $0}' marks.txt | awk '{print $2 "\t" $3 "\t"$4}'
I don't understand awk '{$1=""; print $0}' marks.txt
Even though now intuitively make sense.
awk '{$1=""; print $0}' marks.txt
do? It's explained in SO question you linked: Print all but the first column: