I hardly ever see the + operator used to concatenate strings in Rust.
Most people will use format!() if they're trying to interpolate variables, or some_string.push_str() if they want to add some more text to the end in an imperative way (imagine you're building up a string in a loop or something).
I've found you need to do this sort of string concatenation a lot less frequently in Rust than other languages. When you need to build up a string which should be in a particular format, Rust programmers will tend to create a strongly-typed wrapper which enforces the format (e.g. std::path::PathBuf for filesystem paths, or the url crate for URLs) whereas a Python or C++ programmer would use a normal string and remember how it's meant to be used.
As for concatenation of strings in general, there are two most idiomatic approaches:
format!() if it's not performance critical
String::with_capacity() and s.push_str() if performance is critical (it's not much faster than format!(), so this makes sense only if you're doing lots of appending).