Well, Broadcom43xx is a series that does have native Linux drivers (bcm43xx and the newer one, b43, though I haven't used it - I'm fine with bcm43xx). It's just that those drivers don't have everything it takes to use the device, and Broadcom didn't provide Linux drivers nor instructions to make them. Therefore the users are left with two options, from which I prefer the first (tried second, it works, but it's easier with the first one):
1) stick to the native driver that is already in the kernel, and get the missing parts for it by "chopping" some firmware files out of the Windows drivers using bcm43xx-fwcutter (for bcm43xx) or b43-fwcutter (for b43, which Fedora uses). After the firmware is "cutted" and placed into /lib/firmware/(kernel_version/ in some distributions), the native driver works and all is good.
2) abandon the native driver completely, blacklist it to prevent it from loading during boot and interfering with ndiswrapper, which is used to wrap the Windows drivers (a .inf and a .sys file are needed from the Windows drivers) and use them. This works, but needs blacklisting of the native driver, and overall is just a little bit messy.
So in any case you need a little piece of the Windows drivers, thanks to Broadcom not caring about Linux users. The drivers ought to be on a cd-rom or in the internet; if you search for b43-fwcutter (maybe separate words, to get results?) on the web, you should find what you need to download, and precice instructions on how to do the job (it is easy, don't be afraid - basically one command to cut, anotherone to copy). Use your package manager to install the fwcutter package if it is not installed, obtain the needed file which you'll cut, and follow the instructions. Once it's done, you can just as well reboot and see if it just works.
If you use ndiswrapper, first use rmmod to remove b43 module from kernel (bcm43xx for some distributions). Then blacklist it: you need to alter a blacklist file of module config, something like /etc/modprobe.d/blacklist or close to that, and add a line there that reads "blacklist b43". Then install ndiswrapper and ndiswrapper-utils (Debian has these two packages; not sure if Fedora has them in one or two rpms, but use your package manager and it's done). Then obtain the Windows drivers and extract in some way the needed .inf and .sys files. Then, as root, run "ndiswrapper -i inffilename.inf" and after that "ndiswrapper -l", which should say that driver is loaded and hardware present. If either line is missing, you have wrong drivers or need a reboot. When it's done, reboot and with "lsmod" make sure ndiswrapper is loaded, b43 is not. Your device should now work.
There are numerous howtos and instructions on the web that tell you step by step how you use either method, ndiswrapper or b43-fwcutter. Note that you can configure both of them, but you may use only one of them at a time - if both drivers (b43 and ndiswrapper) are loaded, they interfere and the wireless doesn't work. So choose which one to use -- I would strongly recommend b43 (bcm43xx) + fwcutter -- and stick to that. This link, among the horde of others, describes what to do: it's not for Fedora, but the methods are more or less distribution-independent after you have installed b43(/bcm43xx)-fwcutter or ndiswrapper:
wiki.sabayonlinux.org/index.php?title=HOWTO:_Using_BCM43xx_cards_using_bcm43xx_or_ndiswrapper_with_Sabayon
First you need to decide which way to go.
Second you need to install b43-fwcutter (native driver way) or ndiswrapper (+utils; ndiswrapper way).
Third you need to obtain the Windows driver/firmware part.
Fourth you need to cut the firmware (native driver way) or install the Windows drivers trough ndiswrapper (ndiswrapper way)
Fifth you need to reboot - and if you decide to use ndiswrapper, blacklist b43 module.
It sounds difficult, but it is not once you get it. Basically you just want to get a driver loaded, and only one driver. After that is done, you should reboot to make sure everything is set fine, and run, as root:
If it says no such device, try wlan0 instead of eth1 (eth0 would be your wired card). If your driver installed all right, you see scan results - access points and their information. If your driver install didn't work out well, you get a message saying that interface does not support scanning. In that case get back to the driver installation procedure and see what went wrong: in ndiswrapper's case run "ndiswrapper -l" and make sure it says hardware is present and driver is loaded. In the native driver's case make sure the firmware files got copied to /lib/firmware/ or /lib/firmware/kernel_version_here depending on your distribution's directory structure.
Once the scan works, move on to your favourite wireless network connection program; wpa_supplicant on command-line or NetworkManager on Gnome desktop or WirelessAssistant on KDE desktop. Establish a connection, enjoy a life.