How can I detect when an LED changes color from red to green and quickly send a message to a PC to capture an image from a camera?
•Is this a good approach in general?


Yes, although I'd go farther. Use two sensors, one with a red filter and one with a green filter.


  •Any suggestions on what phototransistor to use?


No. What you need depends on a bunch of things, such as what kind of mount you can make for your sensors, how bright the LED is, how far from the LED your sensors are, etc. A photodiode may work OK, or even a photoresistor.


  •Any suggestions on where to find a filter that will only allow red or
  green light to pass to the phototransistor?


eBay.


  •What is the best way to get a message from a Arduino/Netduino to a
  host PC/Mac in a timely fashion (I'm guessing RS232 is out for speed
  reasons - and it seems to USB may be problematic)


Basically, if you're taking 60 frames / sec, anything which responds in less than 1/60 second should do you. A single character at 9600 baud will take 1 msec, so that's hardly a problem.