@Timeking
A high latency for ASIO is likely to be the combination of Sample Rate and ASIO Buffer Size.
IF you don't mind - go into the ASIO control panel for your M-Audio driver (might be through Sonar or might be down in your system tray - it varies from interface vendor to vendor).
Anyways, in there - try a Sample Rate of 44.1, and an ASIO Buffer Size of 128 (I used to have an option to set mine to 64, but new drivers from Presonus removed that choice).
Then go into Sonar Preferences, set the driver mode to ASIO, using your M-Audio device, apply, then make sure the Sample Rate is also 44.1 in Sonar. You will see the total round trip latency in Preferences, as well, and that should be a bit lower.
But before any of the above, really, delete ASIO4ALL.
Bob Bone