I have had to really work on this matchup myself, and have had relative success lately. I started playing SSBM in October of '06, and I can say that marth vs samus really shows how skilled my marth is at the time. The reason is in order to beat a good samus, marth needs to be highly technical and have good mindgames. You need to be able to L-cancel aerials, wavedash in and out of shields to grabs and attacks, and space fairs incredibly well (among many skills).
Facts you need to know: just about all of marth's tilts and aerials destroy missiles. Be careful when walking toward samus and using tilts however, because samus can catch you in the lag and come close enough to hit you. If samus is missile happy, you should know that if you time the fair right, you can not only destroy the missile but also hit samus and likely start up a fair (Ken?) combo. As long as you hit that samus off the stage you're good. Read the rest and you'll see why.
You want to keep the pressure on the samus and not let her camp. The way you do this is with a barrage of well-spaced fairs (this is why l-cancelling is crucial). Do empty short hops near her, waiting for her to get close enough for a fair or even fsmash. Try to grab to fthrow to fsmash. Do it as fast as possible so samus can't DI in time. You want tippers! If samus gets too close for comfort, do a short hopped dair to get her off of you. It works well on floaty characters like samus/peach.
When edge guarding, jump off the stage facing away, but don't do a bair unless you're sure u can hit samus. What you really want to do is wait for her to use the grappling beam and time a dtilt to poke her out. Now she has lost her grapple and must use up B. Here you want to fsmash her recovery. This is where marth will get that needed advantage over samus. Edgeguarding her is extremely important since she can live forever and keep racking up damage on you if you edgeguard poorly. I should also note that if the samus is too high to make her use her recovery moves, don't let her air dodge back fake you out. As a marth player, when you see the samus in range you want to fsmash (same goes for peach). The problem is the fsmash has just enough lag to allow the samus to escape. Use Utilts. Most likely the samus will think you're going to fsmash, because so many marths do, and she'll still air dodge. NOW use the fsmash. It's mindgames, son!
Things NOT to do against samus:
1) Rush in for a grab. Samus has a great sidestep, and in my experience I can't play samus like I would a fox/falco. If you get a grab, do fthrow to fsmash afap.
2) Do an aerial right in front or behind her (samus dsmash! uggggh). SPACE!!1
3) Same with #2, but not realize that samus has like the best crouch cancelling in the game and is a very heavy character. She'll trade hits with you, and believe me she'll win!
4) Sit back and wait for her to charge her beam cannon, or better yet, get an EXTENDER!!!!
5) Recover low/high enough for a missile to hit you. In my experience, it's best to use that jump early to get extra height (if already high). Just don't use the jump if it puts you in range for her missiles.
6) Remember that samus can spike you by running off stage and doing a nair, but that can be stopped if you recovery low enough. Realize whether the samus player you're playing knows to do this, and if she does... recovery lower. This is tricky and takes practice.
7) Shielding missiles/beam instead of destroying them with fairs and/or sidestepping. Remember that samus can time her jump cancelled missile + beam such that it will hit you right after your sidestep.
8) Hanging on the ledge when samus still has her grapple. Only do this if you think samus can't make it back with her up + B and has already lost the grapple.
Things you WANT to do against samus:
1) Keep in that slashy sound fair range and take down that shield over time. It pressures the samus player because her shield is getting eaten away, and if a fair hits then you can combo her nicely.
2) Learn to sidestep her beam cannon instead of shield it. It takes like half your shield out if you shield it, and it's really not hard to sidestep. Practice sidestepping all of samus's projectiles and you'll be amazed how great you dodge.
3) Use dtilts to get her off the stage, particularly when she's at higher percentages.
4) Occasionally approach samus using a nair, especially if she's in the air.
5) Did I mention keep samus in the air? Uairs, fairs, bairs, they all work well on her. Just beware of her strong nair when spacing.
I'm sure I missed some things, but off the top of my head, that should beat a lot of samus players. I'll have to play Oro or Jasona soon to get the ultimate test though. All in all, as I stated earlier, beating a good samus takes practice and technical skill with marth, plus removing some bad habits like fsmashing when the samus does an air dodge. I mean really, that samus is just in range for a tipper... I just really want to fsmash.... but I'm telling you, get over your desires and just utilt. Even if you end up hitting her with just an utilt, either you'll kill her if she's at around ~150%, or you'll knock her way up in the air, which is not good for samus.
OK I'M DONE!!! .... for now. Oh yeah, DISCLAIMER: I suck and therefore any of my advise should be taken with extreme caution. Good night, SWF!