Well, Rust doesn't have any opinions regarding blocking or not. Currently, std::io implements blocking IO, but as you pointed out, Rust allows libraries to implement non-blocking / async paradigms.
"Rust is so low-level that IO is a library concern, not a language concern," as I like to say.
But standard IO is blocking, correct?
But Rust being so low level to not care about IO is Awesome :)
We're starting off by only having blocking IO in the standard library, yes.