It took a while, but near the end of 2014 smealum & co finally managed to create a working, user-friendly exploit allowing everyone to run homebrew — programs created by unofficial developers to run on, most commonly, games consoles — on their Nintendo 3DS systems, managing to break through Nintendo's immensely improved system security to release what is known as Ninjhax - a level editor exploit for the game Cubic Ninja which is as easy to install as scanning a special QR code, which installs the exploit into the savedata.
Now there's a variety of exploits to choose from to get started with homebrew, ranging from savedata exploits in The Legend of Zelda: Ocarina of Time 3D and IronFall Invasion (PATCHED, though you can download an unpatched version if you already have access to homebrew) to one which is as easy to use as visiting a special web page and pressing a button - more on that later!
There is a decent selection of homebrew available for the 3DS right now, such as:
RetroArch is a large collection of emulators ranging from the PS1 to the SNES and even the Neo Geo Pocket, allowing you to play a large variety of retro games on the go.
Aperture Science 3D by smealum, a continuation of the popular homebrew game Aperture Science DS, is a homebrew remake of Valve's excellent Portal. Though it's in an early stage at the moment, it's playable with very few problems. Graphics are sharp and the framerate is smooth, while playing with the C-stick and extra shoulder buttons on the New Nintendo 3DS feels natural and a perfect fit for the game.
CHMM2 by Rinnegatamante allows you to use custom themes — downloadable from sites like 3dsthem.es — to spice up your HOME Menu.
HANS by smealum lets you "enhance your gameplay", allowing you to use ROM hacks, up the clock speed (New 3DS only!) and bypass version checks.
regionFOUR by smealum (built into the Homebrew Launcher) enables you to play games from all regions on your 3DS with ease.
Before anything else you need to go and download a boot.3dsx file which every exploit mentioned here will start automatically. In most cases you'll want this to be a launcher — a program which allows you to launch other homebrew programs — such as smealum's aptly named Homebrew Launcher, which is available both on its own or as part of the Homebrew Starter Kit, available from https://smealum.github.io/3ds/ (direct link to ZIP file)
For the rest of this tutorial I'm going to assume that you've downloaded the Homebrew Starter Kit (linked above), as it comes with a nice selection of homebrew to get you started, as well as a set of installers for Menuhax (which runs when you boot the HOME menu while holding L), IronHax and oot3Dhax. These are often more convenient than, say, Ninjhax, which requires you to have Cubic Ninja in the cartridge slot at all times (not an issue with IronFall and the eShop version of Ocarina of Time 3D) and Browserhax, which is sometimes unreliable depending on the browser exploit available at the time and is normally patched relatively quickly by Nintendo.
This probably goes without saying, but make sure you extract it somewhere you can find it!
You should have at least a boot.3dsx file and a 3ds folder, and likely a couple of other files near the boot.3dsx file.
Now that you've got the necessary files in place, you're going to need an exploit to actually load them up and let them do their thing. Here are your main options for an initial entry point:
Browserhax is probably the simplest of all the available exploits to run, but it's also one of the more fragile ones. That said, it makes for a great way to get a more permanent exploit such as IronHax or oot3dhax installed.
Browserhax is being developed by yellows8.
If you want to use Browserhax I suggest you use it via JailbreakMii, a web tool I created to make the process a lot simpler. With JailbreakMii you simply load up the webpage and touch the giant button - it doesn't get simpler. However, you can still use yellows8's original website if you desire. You simply need to go to the exploit page in the 3DS browser.
Ninjhax was the first easy exploit for the 3DS, released in late 2014 by smealum. It's very easy to use - the first time you simply need to visit smealum's Ninjhax2 website, enter your system version information and scan the QR code it gives you with Cubic Ninja's level QR code scanner (choose "Create" > "QR Code" from the main menu) (Please note your 3DS must be connected to the internet so Ninjhax can download the exploit data) This will give you the option to install the exploit permanently in the level editor part of the savedata, so next time you want to use homebrew you need simply choose "Create" > "QR Code" from the main menu to start the Homebrew Launcher. See smealum's Ninjhax2 site for more information and to get the special QR code.
Smashbroshax is quite difficult to set up, but is as easy to trigger as loading the local multiplayer menu in Super Smash Bros. for Nintendo 3DS while you broadcast a special WiFi beacon from a PC. This has the advantage that you can exploit multiple systems simultaneously - but make sure nobody is trying to play local multiplayer Smash while you're broadcasting the special WiFi beacon! See yellows8's smashbroshax GitHub repository for more information.