What's the difference between GenericWriter(Reader) and bufferedWriter(Reader) for console input and output and files?

So here is the code i can use:

const StdConsoleOutHandle = std.io.getStdOut().writer();
StdConsoleOutHandle.print(Text);

which uses GenericWriter.
Or i can use this

const StdConsoleOutHandle = std.io.getStdOut().writer();
const OutBuffer = std.io.bufferedWriter(StdConsoleOutHandle).writer();
OutBuffer.print();
OutBuffer.flush();

Which uses bufferedWriter.

Always prefer bufferedWriter.

Otherwise your bytes will be written to the handle one at a time. This might not be noticeable for a sentence or two, but the lag is quite apparent for longer writes.