Yeah... An Arduino or other microcontroller isn't going to add anything other than possibly making the thing more portable than a computer. And compared to programming a computer, the whole project is more difficult because you have to design the hardware as well as the software.
Then again, I'm not familiar with a lot of the behringer products. Thanks for telling me that, I'll check that out and see how well it works.
The Behringer gizmo is probably the most economical way to plug a guitar into a computer, but there are all kinds of [u]audio interfaces[/u] with instrument inputs, mic inputs, or line-level inputs. (With these, you are not using your computer's soundcard unless you are using it to play-back or monitor the recording.)
For acoustic guitar, another simple solution is a "studio style" [u]USB microphone[/u]. These things can give you nearly pro studio results if you have a good acoustic space or studio, and if you are recording mono. (You can generally only record with one USB mic at a time). You can get these starting around $100 USD, and again you are bypassing your soundcard. I do not recommend a cheap "computer microphone".
A regular soundcard is pretty much worthless for good-quality recording because the mic input is designed for a computer mic and it's the wrong interface for any performance/studio mic (low-impedance balanced with an XLR connector, or a guitar (very high impedance).
Your software development will be a lot easier if you start-out analyzing recordings. If you can get that working, it shouldn't be too hard to make your application work in real time. And the hardware interface requirements will be the same either way.
Once you have the hardware set-up, recording is easy! Most interfaces will come with software. Or, any "audio editor" application can record. [u]Audacity[/u] is FREE. I've used [u]GoldWave[/u] for many years ($50 USD with free upgrades).
...and one of the options I'm adding is the ability to grade what you play.
Now the bad news... That might be difficult or impossible. There are programs for converting single-note sounds into [
MIDI](MIDI - Wikipedia). But from what I understand, there is nothing that works very well with chords or multiple instruments playing at the same time.
But, the place to start is with [u]FFT[/u]. I'm sure you can find an FFT library for C#. FFT will give the frequency content of any signal at any point(s) in time. From that, it's fairly easy to determine the root frequency and convert that to a root note. It's analyzing the harmonics & overtones that becomes tricky.