Yes, it gets into corners and tight spaces better, and provides more thorough insulation. Here are some more opinions and answers:
Yes and no. Foam insulation can be good, if its the proper type and installed correctly. If open cell is used it should be only used as an air barrier where there are openings from the ceiling to the attic. If your thinking to insulate the roof to bring the attic into the building envelope, then yes its much better then fiberglass as long as you use closed cell fire resistant or coated insulation for at least two inches directly against the roof structure then open cell can be used to build up the R value as less cost. Combined around a six or seven inch foam barrier will give you the R-32 on the roof.
Incorrectly done, foam can trap moisture and cause all sorts of unhealthy issues, but done properly it is the best type of insulation you can use.
If your not thinking of doing the roof, which only needs to be done if you have AC or Heating equipment in the attic then just use foam to seal any air openings on floor of attic, put baffles along soffits, and install at least a R 32 insulation on the floor.
Feel free to contact me if you have questions on doing this project.