It's possible if you manage to obtain a copy of Unity for 3DS from some shady source. But in this case you may not publish your game on this site(or on most most sites). This method isn't recommended. Porting Mono by yourself would be a huge undertakement. There exist some tools which convert C# to C++(Unity has it's own and uses it for it's mobile platforms including the 3DS) but I doubt those are suitable for 3DS development.
There are two major programming languages in the 3DS dev scene: C and C++. Besides these two it's also possible to program in Lua but this is limited to normal applications. And really, writing a custom firmware doesn't only need a good programming skills but also great knowledge about the 3DS architecture. If your'e just starting, writing a CFW in near future is an unrealistc goal.
But if you're still interested in homebrew programming I recommend you to simply start by learning Lua for the PC.
EDIT: ah, I was ninjaed. C is also an option, but if you're a total beginner, I would definitely recommend Lua over C
Yes the best option for me would probably be to learn C++ instead of waiting for a mono that will never exist on the homebrew scene XD