The Hough transform is used in computer vision (2d and 3d) for the recognition of edges and lines as one stage in a large processing pipeline.
Its competitor is RANSAC.
Compared to linear or orthogonal regression it has the advantage that it has quite a natural way to cope with multiple lines. Each line is represented by a high value in the Hough space. The next line can be found by removing the current maximum.
It is generalizable to more abstract shapes, but the Hough space becomes high dimensional. It is nontrivial to represent hierarchical objects, for example line segments AND the square it forms.
As MrQuincle replied, its main competitor is RANSAC, and FHT is one of the best tools in finding straight lines on images: it is indifferent to dashed lines, intersections, etc. Also, compared to RANSAC it's deterministic and doesn't involve any binarisation (for RANSAC you need a set of points, not a continuous image).
There's also a neat trick of finding vanishing points via double Hough transform.
See also [0] for an example of HT application to road markup recognition.