The new 2010 version of SharePoint has a so called Client Object Model which you can use in your Silverlight applications. It also comes with a simple webpart that allows you to show a .xap file stored in one of your document libraries.
Someone recently asked me if i still programmed for Silverlight, which i haven't done for a while since combining Silverlight and SharePoint was far from perfect. So i decided to create a simple Silverlight application to see how this Client Object Model works, the applications goal was to enumerate all lists of a specific type on my SharePoint installation.
In Visual Studio 2010 Beta i started a new Silverlight application and dropped a few controls on the drawing canvas. The last time i've been working with Silverlight it only had a few controls and everything had to be done in the xaml code, the designer in Visual Studio couldn't be used for xaml at that time.
To use the client object model you need to reference two files: Microsoft.SharePoint.Client.Silverlight.dll and Microsoft.SharePoint.Client.Silverlight.Runtime.dll . Both files can be found under %SHAREPOINTROOT%\TEMPLATES\LAYOUTS\ClientBin\ .
Directly after adding these files i stumbled upon the first problem. VS2010 showed an exclamationmark next to the references and complained that it couldn't find the files. It turns out that VS2010 Beta has a problem with long file paths, so moving the project closer to the root and reopening it solved the problem.
After the references are added the client object model is available for use. You can create a new ClientContext passing the url of your SharePoint site and start accessing webs,lists etc.
When your application is complete just upload the .xap file to a document library and add a Silverlight webpart to your page, mine looked like this:
Now i just need some design skills :)