Totally new to game development here– I know models are never built in Unity, but what about environments? Is it common to say, build an office building environment with hallways and doors (sans furniture and props) in Blender and import that into Unity and assemble the scene there?
For general questions I hope general answers are okay, I do like to rant and I assume GameDev is probably more relaxed than the other stack exchanges.
Generally all "hard surface" 3D models in a game today environmental or otherwise are created in a 3D modeling application such as 3DSMax, Maya, Blender, or Zbrush.
The common exception to this is terrain generation. Game engines like Unity tend to include a tool for creating and deforming very large ground plane meshes that are tailored to perform well and include features like texture blending. Once you learn about UV unwrapping, you'll understand that a special shader is usually required for terrain, since the textures are usually several different textures tiling and alpha-blended together, often based on a height map.
The other less common exception is any case where meshes are being generated programatically.
In the past engines did rely on built in tools to make a lot of geometry out of adding and subtracting primitives. I am no expert, but my gut feeling is that doing things that way helped integrate an engine's binary space partitioning calculations. Source and Unreal 3 are both engines that did this. These are your "brushes" in Hammer. https://developer.valvesoftware.com/wiki/Brush
Today almost everything is a static mesh, enabled due to vast performance improvements across the board. Killing Floor 2 for example, despite being built in Unreal 3, is constructed entirely of modular stage segments/slices. Tripwire has built in their own custom functionality to merge those meshes to make that system practical.
If you're interested in gamedev, want to make 3D games alone, and don't have money to spend, I can tell you Blender is a very powerful tool. However, learning any 3D modelling application is a serious undertaking and you should look for a structured resource to learn from, either a paid online video course or a book. While you can learn a lot from Google, these applications are highly contextual and easy to get lost (and even lose progress in) unless you understand the big picture of what's going on in all their little windows.