Running a Windows VM from external flash drive
Running the VM from a USB drive is definitely possible, but far from optimal.

I use VM for running Project and Visio on my mac (never from USB though), and it made a huge difference when I switched to SSD.

Some numbers: A decent internal SSD will have a speed (sequential read/write) of around 500 MB/s while a fast external SSD will do around 300 MB/s, and a top notch USB 3.0 drive will be around 140 MB/s (a lot USB 3.0 drives are bellow 20 MB/s)  - Source: SSD Benchmarks, USB Benchmarks

To put this into perspective, a top notch usb drive should perform nearly as well as an old hard disk drive, so it's definitely viable. But it will only be half as fast as a good external SSD drive and 1/3 as fast as your internal drive.

This makes a huge difference when running VMs. Keep in mind the bottleneck here is the actual read/write operations on the drive, since the USB/Thunderbolt bandwidth allows for much greater speeds.

Whatever you chose, make sure you're getting a fast performance unit, since speed is very important for VMs. I really recommend making sure you get a Thunderbolt or USB 3.0 drive.