Textures can be aligned manually by assigning an offset value on two axes. The X offset changes horizontal texture alignment on a sidedef and the Y offset changes vertical alignment. This method is time consuming, but can still be used to good effect.
Newer level editors, such as Doom Builder support real-time texture alignment. While looking at a texture in 3D Mode, the arrow keys on the keyboard can be used to change the texture's alignment automatically. The advantage of this method is its simplicity and ease of use.
Older editors like Deth or Zeth have a feature to autoalign textures, which makes them the most useful on this matter.