You can have two different Xbox LIVE accounts on the same Xbox 360 for sure. I've had 4-5 on mine at one time between roommates and such.
You can also recover your Xbox LIVE Gamertag to any console at any point. Your account can only be "active and updated" on a SINGLE console at a time. (What this means is that it must be recovered to a console before you can use online services on it. This makes it so more than one person can't access your account at once.)
The way that purchasing marketplace items works is this:
Whenever you buy any item on the marketplace, it is tied to both your gamertag and your console. Let me give you an example.
Your gamertag is PersonA and your friend's gamertag is PersonB. Let's also say you have a buddy named PersonC who is visiting and has his Xbox LIVE account on a thumb drive.
Your Xbox 360 will be XboxA and each respective person's Xbox will be XboxB and XboxC.
You buy an Arcade game on XboxA as PersonA. This means that ANY PERSON (A,B,C,etc.) can play this game on XboxA (YOUR Xbox), OR you can download this game to play it on XboxB or XboxC on your account only.
To summarize--when you purchase the game as PersonB on XboxC (just a random example), either PersonB can play it on any Xbox, or any person can play it on XboxC.
If this doesn't make sense I can clarify further.
Hope it helps! Happy gaming. :)
Edit: I wanted to add a tip. Say you and a buddy both own Halo: Reach and you want some new DLC for 800 MSP, right? Well, if one of you knows you will always be using the game on your own name on your Xbox and no one else will be, you can buy it on his Xbox. That way, anyone on his xbox can play it (him) and you can play it anywhere (on your own Xbox).
It's not illegal or cheating the system or anything, since the permissions are still restricted as such.