My source, WoWhead. Presented here in more condensed form, because I got tired of scrolling.
Expert First Aid (150–225) is learned from Deneb Walker in Stromgarde Keep, northeast side by the chapel (27.2, 58.8) (Alliance), or Balai Lok'Wein at Brackenwall Village in Dustwallow Marsh, between the caravans on the north side (36.4, 30.4) (Horde). These vendors also sell the recipe books for Heavy Silk Bandage and Mageweave Bandage.
Artisan First Aid (225–300) is learned from a quest. Upon reaching level 35 and First Aid Skill 225, the optional breadcrumb quest Alliance Trauma/Horde Trauma will become available. The breadcrumb quest can be skipped, and you can go directly to Doctor Gregory Victor in Hammerfall, Arathi Highlands or Doctor Gustaf VanHowzen in Theramore, Dustwallow Marsh for the quest Triage/Triage, from which you get Artisan First Aid.
- 1 to 40: Linen Bandage.
- 41 to 80: Heavy Linen Bandage. Learn Journeyman First Aid at 50.
- 81 to 115: Wool Bandage.
- 116 to 150: Heavy Wool Bandage. Purchase and learn Expert First Aid - Under Wraps (and the Mageweave Bandage and Heavy Silk Bandage manuals) from the vendors.
- 151 to 180: Silk Bandage.
- 181 to 210: Heavy Silk Bandage.
- 211 to 240: Mageweave Bandage. Do the quests for Artisan First Aid and train Heavy Mageweave Bandage at 225.
- 241 to 260: Heavy Mageweave Bandage.
- 261 to 290: Runecloth Bandage. Train it from the same source as Heavy Mageweave Bandage.
- 290 to 300: Heavy Runecloth Bandage.
With enough Mageweave, it's possible to get to 300 with only Heavy Mageweave Bandage. (It turns green at 270, grey at 300.)
Outlands and TBC:
- Master First Aid - Doctor in the House is learned from purchasing a book, either from Burko, Temple of Telhamat, Hellfire Peninsula (22.4, 39.2) or Aresella, Falcon Watch, Hellfire Peninsula (26.2, 62.0). You can also buy from them Manual: Netherweave Bandage and Manual: Heavy Netherweave Bandage.
- 300 to 330: Heavy Runecloth Bandage. The recipe turns green at 320 and grey at 350, so you'll probably need like 180 to 200 Runecloth, or 9–10 stacks.
- 330 to 360: Netherweave Bandage.
- 360 to 375: Heavy Netherweave Bandage.